ホームページ  >  記事  >  バックエンド開発  >  thinkphp5 プロジェクトをクラウド仮想ホストにデプロイする方法の詳細な説明

thinkphp5 プロジェクトをクラウド仮想ホストにデプロイする方法の詳細な説明

小云云
小云云オリジナル
2017-12-21 14:05:123942ブラウズ

Thinkphp はオープンソースの PHP フレームワークとして今日まで開発されており、シンプルで使いやすいことに加えて、開発ドキュメントが充実していることは間違いなく PHP の学生にとって最も適したフレームワークです。そして豊富なプラグイン。この記事では、クラウド仮想ホスト上での thinkphp5 プロジェクトのデプロイに関する関連コンテンツを詳しく紹介し、参考と学習のために共有します。以下では多くを説明しません。詳細な紹介を見てみましょう。

ThinkPHP5.0完全開発マニュアル→デプロイメント→仮想ホスト環境を確認し、状況を理解した上で修正を開始してください。

環境

  • thinkphp 5.0.11

  • Alibaba Cloud Virtual System CentOS

ステップ1

モバイルエントリファイルの場所を変更し、ルートディレクトリ(つまり、htドキュメント)。

index.phpエントリファイルの内容を変更します

// 定义应用目录
define('APP_PATH', __DIR__ . '/application/');
// 加载框架引导文件
require __DIR__ . '/thinkphp/start.php';

これでアクセスできるようになりましたが、内側のページをクリックして見ても、パスの書き換えは反映されません。 .htaccess ファイルが存在しないためです。

ステップ 2

.htaccess ファイルもルート ディレクトリに移動します。

もしかしたらもう問題は解決しているかもしれません。まだ解決していない場合は、読み続けてください。

ステップ 3

安全!

エントリーファイルを以下のディレクトリに移動したため、フレームワーク配下のディレクトリは全て公開されました。

Apacheサーバーがそれを処理しない場合。その後、重要なファイルに直接アクセスできます。

処理の有無に関わらず、ディレクトリ配下にディレクトリごとに.htaccessを直接作成します。次に、すべてから拒否を書き込みます。

えー

わかりました。

4 番目のステップ

解決策: CSS、JS、画像、その他の静的リソースは 404 です。

ファイルがパブリックディレクトリの外に移動されたため、ファイルが見つかりません。

すべてのディレクトリパスを置き換える必要があります。

__PUBLIC__、__STATIC__、__CSS__、__JS__ などを使用して書き込む場合

おめでとうございます、構成内で view_replace_str を直接変更するだけです

deny from all

そうでない場合は、すべてのビュー ファイル、すべての使用されているパスが表示されます。ディレクトリを完全に置き換える場所です

'view_replace_str'  => [
 '__PUBLIC__' => '/public',
 '__STATIC__' => '/public/static',
 '__CSS__' => '/public/static',
 '__JS__'  => '/public/static',
],

特に見落としやすい箇所はCSS内の背景パスとカスタムアップロードパスですので注意してください。

ステップ 5

Linux でのファイル パスは大文字と小文字が区別されます。

たとえば、次のようになります。

コントローラーのメソッド名は次のとおりです: public function userCenter()

対応するビュー ファイルは: userCenter.html、

次に、それにアクセスすると、ビュー ファイルが使用できないことがわかります。が見つかり、エラーが報告されます。

解決策:

方法 1. テンプレート ファイル名をすべて小文字に変更します。

方法 2. $this->fetch('テンプレート ファイル名');

方法 3. $this-> ;fetch(__FUNCTION__) ですが、ビュー ファイル名はメソッド名と同じである必要があります。

Web サイトのすべての機能をテストします。問題ありません。展開と構成は完了しました。

関連する推奨事項:

クラウド仮想ホストの詳細な紹介

データベースに接続するための Alibaba Cloud 仮想ホスト PHP のホスト名は何ですか?

Alibaba Cloud 仮想ホストが実行時に 500 エラーを報告するcurl_exec、詳細情報はありません

以上がthinkphp5 プロジェクトをクラウド仮想ホストにデプロイする方法の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。