ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp はさまざまな環境のどこに配置する必要がありますか?

thinkphp はさまざまな環境のどこに配置する必要がありますか?

PHPz
PHPzオリジナル
2023-04-21 10:11:05917ブラウズ

Web アプリケーションを開発するとき、プロジェクト開発をスピードアップするために成熟した PHP フレームワークを使用することがよくありますが、その中でも thinkphp は広く使用されているフレームワークの 1 つです。ただし、多くの初心者は、thinkphp を適切に動作させるためにどこに配置すればよいのかわかりません。この記事では、さまざまな環境での thinkphp の配置場所と、そのパス情報の設定方法を紹介します。

1. ローカル環境

ローカル環境では、通常、XAMPP や WAMP などの統合開発環境を使用して、Apache Web サーバーと PHP 環境をパッケージ化します。この場合、thinkphp フォルダーを Web サーバーのルート ディレクトリ (XAMPP の htdocs ディレクトリ、WAMP の www ディレクトリなど) に直接配置できます。このようにして、ブラウザの localhost または 127.0.0.1 を介して Web サイトにアクセスできます。さらに、プロジェクトでデータベースの使用が必要な場合は、phpMyAdmin などのデータベース管理ツールでデータベースを作成し、プログラムの構成ファイルを介してデータベースに接続する必要もあります。

2. 仮想ホスト

共有ホスティングまたは VPS (仮想プライベート サーバー) では、通常、仮想ホスティングを使用して Web サイトをホストします。仮想ホストの構成の違いに応じて、PHP ファイルの保存場所も異なります。一般に、仮想ホストのドキュメント ルート ディレクトリは、ホスト下のすべての Web サイトの共通ルート ディレクトリであり、ホーム ディレクトリとも呼ばれます。 thinkphp を myapp という名前のサブディレクトリに配置する必要があるとします。thinkphp フォルダー全体を myapp ディレクトリにアップロードし、そのディレクトリに次の内容の Index.php ファイルを作成します:

<?php
define(&#39;APP_PATH&#39;, __DIR__ . &#39;/../thinkphp/&#39;);
define(&#39;BIND_MODULE&#39;,&#39;index&#39;);
require __DIR__ . &#39;/../thinkphp/start.php&#39;;

ここで、定義関数を使用して APP_PATH 定数を定義します。この定数は、thinkphp フォルダーの上位ディレクトリを指します。次に、index モジュールを実行し、start.php ファイルを通じてフレームワーク全体を開始します。このようにして、http://yourdomain/myapp にアクセスすると、ブラウザで Web サイトにアクセスできます。

さらに、アプリケーションごとに異なるサブディレクトリを作成する必要がある場合は、各アプリケーションのホーム ディレクトリをそのディレクトリ下のパブリック ディレクトリに設定できます。つまり、各アプリケーションにパブリック ディレクトリを作成し、その中にアプリケーションのエントリ ファイルを配置する必要があります。

/project1
    /application
        /controller
        /model
        /view
        /...
    /public
        /index.php
        /assets
            /css
            /js
            /images
            /...
        /...
/project2
    /application
    /public
        /index.php
/project3
    /application
    /public
        /index.php

これはより一般的な方法です。パブリック ディレクトリにはすべてのコンテンツが含まれているためです。アプリケーション ディレクトリには Web サーバー経由で直接アクセスできますが、アプリケーション ディレクトリ内のコード ファイルには直接アクセスできません。

3. リモート サーバー

アプリケーションをリモート サーバーでホストする場合は、パブリック ディレクトリに配置してください。 Linux サーバーを使用している場合は、thinkphp フォルダーを /var/www/html ディレクトリーの直下に配置できます。 Windows サーバーを使用している場合は、C:\inetpub\wwwroot ディレクトリに配置できます。もちろん、自分で構築した仮想ホスト サーバーを使用している場合は、仮想ホストのコントロール パネルで設定したディレクトリに基づいてアプリケーションの保存場所を決定できます。

リモート サーバーでは、フレームワークが適切に実行できるように、thinkphp のパス情報を構成する必要もあります。 /var/www/html/thinkphp の下にフレームワーク ディレクトリを配置したと仮定すると、メイン設定ファイル config.php を変更し、次の内容を追加する必要があります:

&#39;url_common_param&#39;       => true,
'url_route_on'           => true,
'url_route_must'         => false,
'url_html_suffix'        => '',
'app_debug'              => true,
'unix_socket'            => '/var/run/mysqld/mysqld.sock',
'app_path'               => realpath(__DIR__.'/../application') . '/',

ここでは、app_path を thinkphp として設定します。フォルダー アプリケーションのコード ファイルが配置されているパス。これにより、アプリケーションのコード ファイルを探す場所がフレームワークに指示されます。 PHP では、現在の作業ディレクトリを取得するのではなく、現在のファイルのディレクトリを取得するために __DIR__ (二重アンダースコア) を使用することに注意してください。したがって、realpath(__DIR__.'/../application') は、thinkphp の上位ディレクトリ下のアプリケーションディレクトリのパスを表します。

4. 概要

ローカル環境、仮想ホスト、リモートサーバーのいずれであっても、thinkphp フォルダーを正しく配置し、そのパス情報を設定して、thinkphp フォルダーが正常に機能するようにする必要があります。フレームワークが実行されます。この記事では、いくつかの一般的な方法を説明しますが、実際の状況に応じて微調整する必要がある場合があります。いずれにせよ、thinkphp を正しく配置することは開発プロセスにおいて非常に重要なステップであり、開発したアプリケーションが適切に実行されることを保証することを覚えておいてください。

以上がthinkphp はさまざまな環境のどこに配置する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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