ThinkPHPは、Apache2オープンソースライセンスの下で配布されている、オープンソース、高速、シンプル、軽量、およびオブジェクト指向のPHP開発フレームワークです。 ThinkPHPは、アジャイルwebアプリケーションを開発し、エンタープライズアプリケーション開発を簡素化するように設計されています。 このトピックでは、Alibaba Cloud Linux 3、Alibaba Cloud Linux 2、およびCentOS 7.xを実行するElastic Compute Service (ECS) インスタンスでThinkPHP 8.0フレームワークを構築する方法について説明します。
前提条件
このトピックは、PHPを学習している、またはThinkPHPフレームワークに基づいてアプリケーションを開発しているユーザーを対象としています。 ThinkPHPフレームワークを構築する場合、ECSインスタンスは次の要件を満たす必要があります。
パブリックIPアドレスがインスタンスに割り当てられるか、elastic IPアドレス (EIP) がインスタンスに関連付けられます。
オペレーティングシステムAlibaba Cloud Linux 3、Alibaba Cloud Linux 3、またはCentOS 7.x。
インスタンスのセキュリティグループのインバウンドルールは、ポート22、8000、および443でのトラフィックを許可します。 8000はThinkPHPのデフォルトポートです。 詳細については、「セキュリティグループルールの追加」をご参照ください。
手順
PHP 8.0をインストールします。
説明ThinkPHP 8.0にはPHP 8.0以降が必要です。
インスタンスがAlibaba Cloud Linux 3を実行している場合は、OpenSSL10の依存関係をインストールします。
sudo yum install -y compat-openssl10
PHPをインストールします。
Alibaba Cloud Linux 2およびAlibaba Cloud Linux 3
次のコマンドを実行して、YUMリポジトリを更新します。
sudo rpm -Uvh https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm
次のコマンドを実行して、PHP 8.0リポジトリを有効にします。
sudo yum-config-manager -- enable remi-php80
次のコマンドを実行してPHPをインストールします。
sudo yum install -y php php-cli php-fpm php-common php-mysqlnd php-gd php-mbstring
CentOS 7.x
YUMリポジトリを更新します。
次のコマンドを実行して、Extra Packages for Enterprise Linux (EPEL) リポジトリとRemiリポジトリをインストールします。
sudo yum install -y epel-release sudo yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm
次のコマンドを実行して、PHP 8.0リポジトリを有効にします。
sudo yum-config-manager -- enable remi-php80
次のコマンドを実行してPHPをインストールします。
sudo yum install -y php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json
次のコマンドを実行して、PHPのバージョンを表示します。
php -v
次のコマンド出力は、PHPがインストールされていることを示します。
PHP 8.0.30 (cli) (ビルド: 8月3日2023 17:13:08) ( NTS gcc x86_64) 著作権 (c) PHPグループ Zendエンジンv4.0.30、著作権 (c) Zend Technologies
Composer をインストールします。
ComposerはPHPの依存関係管理ツールです。 プロジェクトに必要な外部依存関係を定義および管理できます。 このような依存関係を自動的にインストール、更新、およびロードすることもできます。 詳細については、Composerの公式ウェブサイトをご覧ください。
Composerに必要な依存関係をインストールします。
sudo yum install -y unzip git
Composer をインストールします。
curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer
Composerのバージョンを表示します。
composer -- version
以下の情報は、Composerがインストールされていることを示します。
ThinkPHPをインストールします。
Composerを使用して新しいThinkPHPアプリケーションを作成します。
次のコマンドを実行して、現在のディレクトリに
my-thinkphp-app
ディレクトリを作成し、ThinkPHPのコアファイルと依存関係をダウンロードします。作曲家create-project topthink/think my-thinkphp-app
ディレクトリを新しいThinkPHPアプリケーションディレクトリに変更し、ThinkPHP組み込みサーバーを起動します。
cd my-thinkphp-app php think run
次の情報は、ThinkPHPが開始されたことを示します。
ブラウザを開き、アドレスバーに
http:// <ECSインスタンスのパブリックIPアドレス>:8000
と入力します。インターフェイスに通常アクセスできる場合は、ThinkPHPがデプロイされていることを示します。
Webサーバー (本番環境) を設定します。
ThinkPHPアプリケーションを展開するには、本番環境でApache HTTP serverやNGINX web ServerなどのWebサーバーを作成する必要があります。 フレームワークルーティングが機能するように、webサーバーのURL書き換えルールを適切に設定する必要があります。
Apacheの設定例。 mod_rewriteモジュールを有効にする必要があります。
<IfModule mod_rewrite.c> オプション + FollowSymlinks-インデックス RewriteEngineオン RewriteCond %{REQUEST_FILENAME} ! -d RewriteCond %{REQUEST_FILENAME} ! -f RewriteRule ^(.*)$ index.php/$1 [QSA、PT、L] </IfModule>
NGINXの設定例:
location / { if (!-e $request_filename) { 書き換え ^(.*)$ /index.php?s=/$1 last; break; } }