次は、Laradocke 実行 TP プロジェクトについて紹介する thinkphp フレームワーク チュートリアルのコラムです。困っている友達のお役に立てれば幸いです!
1. laradock を初めて起動すると、ビルド プロセスが非常に遅くなります。
コンテナのプルの問題により、イメージはデフォルトで海外にあるため、コンテナを docker-compose する前に、.env ファイルで次のテキストを探してください
CHANGE_SOURCE=``false
次に、false を false true に変更し、次のテキストを探します。
#UBUNTU_SOURCE=aliyun
先頭の # を削除します。コメントを削除し、デフォルトの外部ミラー ソースを最速の国内ミラー ソースに変更します。aliyunのミラー ソース
次に、ワークスペースのタイム ゾーンを中国のタイム ゾーンに変更し、次のテキストを見つけます
WORKSPACE_TIMEZONE=UTC
UTC を PRC に変更します
次にコマンドを実行します
docker-compose up -d nginx mariadb
開始する必要があるコンテナを選択してください
自分で比較してくださいビルド時間後、帯域幅 20M 未満で、ミラー ソースが変更されていなければ、1 つと同じくらい高速になります変更後は 10 分しかかかりません
# 2. laradock が起動しています コンテナーのビルド ワークスペース プロセス中にエラーが報告されます
関連テキスト「raw.githubusercontent.com」が表示された場合は、ドメイン名をローカル ホストの IP にバインドしますLinux を例に挙げます
vim ` `/etc/hosts
3. Composer のインストールが遅い
laradock をインストールした後、git を使用してワークスペース コンテナー内のサードパーティのホスティング ウェアハウスから tp5 フレームワークをプルし、フレームワークの依存関係をインストールします。この時点では、composer のインストールは非常に遅くなります。国内のソースを置き換える必要がある場合は、次のコマンドを実行します。composer config -g repo.packagist combos https:``//packagist``.phpcomposer.com
4. Composer はインストールするバージョン番号を無視します
Composer のインストール中にエラー メッセージ「Your要件をインストール可能なパッケージのセットに解決できませんでした。」が表示された場合は、次のことができます。インストールのバージョン番号を無視して、次のコマンドを実行しますcomposer ``install
--ignore-platform-reqs
5. Composer は tp5 のデータベース移行ツールをインストールします
tp5.0 の移行ツールは 1.、tp5.1 の移行ツールは 2.バージョン番号が指定されていない場合は、デフォルトで最新のバージョンがインストールされます。移行ツールでは、次のコマンドを実行します。
composer require topthink``/think-migration``=1.*
##6. laradock の tp5 でデータベース接続を設定するとき、ホストはコンテナ名を入力します。私は mariadb コンテナを使用します。したがって、次の構成
##'host'=>'mariadb'
7. tp5 はランタイムに完全な権限を与えます##hmod -r runtime 777
Add によってスローされた例外をキャプチャします。 catch パラメータ Exception の前にあるバックスラッシュは、キャプチャが最下位の Exception から開始されることを示します
catch``(\Exception)画像の参照を容易にするために、画像の保存ディレクトリを public/uploads に指定しましたが、エラーが報告されました。パブリックに完全な権限を与えることで解決できますchmod -r public 777
10. バックエンド インターフェイスの権限の確認oauth2 は非常に優れた認証メカニズムです。PHP には優れたライブラリ https://github.com/thephpleague/ oauth2-server がありますが、非常に無力です。パスポートがある laravel とは異なり、また、 Drupal、cakephp、その他のフレームワークをサポートしています。Json-web-token を使用するのも良いです https://github.com/lcobucci/jwt
11. クロスドメイン処理アプリケーションディレクトリの tags.php に、アプリケーションの初期化時に実行されるファイルを追加します。 applicationapi/behavior/CORS.php ファイル、および header
// アプリケーションの初期化``'app_init'はアプリケーションの初期化プロセス中に発行されます
=> [` `' app\\api\\behavior\\CORS'``], クロスドメイン ファイル
<pre class="brush:php;toolbar:false"><?php namespace app\api\behavior; use think\Response; class CORS{ public function appInit(&$params)
{ header(&#39;Access-Control-Allow-Origin: *&#39;);
header("Access-Control-Allow-Headers: token,Origin, X-Requested-With, Content-Type, Accept");
header("Access-Control-Allow-Methods:GET, POST");
if (request()->isOptions()) {
exit();
}
}}</pre>
<hr>
<p><span class="header-link octicon octicon-link"></span><strong>12. git プッシュ/プルには本人確認が必要です。ユーザー名とパスワードを複数回入力してください</strong></p>
<p>Linux 環境では、ウェアハウス ディレクトリを実行します。 ##境界線なしでパケットを送信するように設定し、HTTP リクエスト バッファーを大きく設定します</p>##git config --global sendpack.sideband false git config --global http.postBuffer 524288000<p><code>
14. nginx は tp5 pathinfo をサポートしていませんプロジェクトに対応する .conf ファイル構成を変更します
<?php namespace app\api\behavior; use think\Response; class CORS { public function appInit(&$params) { header('Access-Control-Allow-Origin: *'); header("Access-Control-Allow-Headers: token,Origin, X-Requested-With, Content-Type, Accept"); header("Access-Control-Allow-Methods:GET, POST"); if (request()->isOptions()) { exit(); } } }以前の場所を変更 ~ .php$ {
<pre class="brush:php;toolbar:false"> location ~ \.php {
try_files $uri /index.php =404;
fastcgi_pass php-upstream;
fastcgi_index index.php;
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;
# 添加部分↓↓↓↓
# Set var PATH_INFO
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
# 添加部分↑↑↑↑
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fixes timeouts
fastcgi_read_timeout 600;
include fastcgi_params;}</pre>
時間を見つけて具体的なオプションを学習します
14. Docker 設定の国内ソース
sudo tee /etc/docker/daemon.json vim /etc/docker/daemon.json次の内容を入力し、アドレスは自分で選択できます
{ "registry-mirrors": ["https://uxk0ognt.mirror.aliyuncs.com"] }
#その後、次の手順を実行します
systemctl restart docker
##Note
ご存知のとおり, github からのクローン作成は常に行われています。比較的遅いです。Code Cloud を使用して、事前に一般的に使用されるウェアハウスを独自の Code Cloud ワークスペースにインポートすることを選択できます。使用する必要がある場合は、Code Cloud を通じてクローンを作成してください
以上がLaradocke が実行する TP プロジェクトについての詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

ドリームウィーバー CS6
ビジュアル Web 開発ツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 中国語版
中国語版、とても使いやすい
