nginx and fastcgi:高性能PHPセットアップ
NGINXおよびFASTCGIでPHPアプリケーションを実行すると、従来のApache/Mod_PHPアプローチよりも大きなパフォーマンスとスケーラビリティの利点が提供されます。 このガイドでは、Ubuntuサーバーにこの高性能アーキテクチャを設定し、FastCGIの効率とNginxのパワーを活用します。
。fastcgi:パフォーマンスブースト
各リクエストの新しいプロセスを作成するというCGIの固有のオーバーヘッドは、FastCGIによって軽減されます。 FastCGIは永続的なプロセスを維持し、CPUと時間消費を大幅に削減します。これにより、スケーラビリティと全体的なサーバーの効率が向上します。 以下の画像は、典型的なCGIプロセスを示しています。
インストールと基本構成
インストールphpとnginx:必要なパッケージをインストールするには:
sudo apt-get install php5-cli php5-fpm nginx
configure nginx:デフォルトのnginx構成を直接編集しないようにします。代わりに、コピーを作成します:
cd /etc/nginx
sudo rm sites-enabled/default
sudo cp sites-available/default sites-available/my-default
sudo ln -s /etc/nginx/sites-available/my-default sites-enabled/default
inable fastcgi: uncomment in uncomment /etc/nginx/sites-abailable/my-default
fastcgiサービス(php5-fpm)へのルーティングを行います。重要なセクションはこれに似ているはずです:
location ~ \.php$ {
fastcgi_split_path_info ^(. \.php)(/. )$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
nginxを開始:
sudo service nginx start
検証インストール: create info.php
(
)をWebルート(/usr/share/nginx/html
)に含む。 info.php
にアクセスすることで、ブラウザでPHP情報を表示し、FastCGIを介したNGINXとPHPの統合を確認する必要があります。 サーバーAPIには「fpm/fastcgi」が表示されます。
Essential Configuration Enhancements
Webルート許可:一定の sudo
使用を回避するために権限を調整します:
sudo adduser www-data
sudo chgrp -R www-data /usr/share/nginx/html
sudo chmod -R g rw /usr/share/nginx/html
sudo chmod g s /usr/share/nginx/html
は存在しないスクリプトを処理します: a try_files
ディレクティブをnginx構成に追加してセキュリティを強化します:
location ~ \.php$ {
try_files $uri $uri/ =404;
# ... other FastCGI directives ...
}
Apacheからの移行:オンラインコンバーターを使用して、apacheディレクティブ(例:。htaccess
ルール)をnginx等価物に変換します。 変換された構成を実装する前に慎重に確認します。
結論
このガイドは、NGINXとFASTCGIを使用して高性能PHP環境を設定するための堅牢な基盤を提供します。 これらの手順に従って、推奨されるセキュリティとパフォーマンスの強化を組み込むことにより、PHPアプリケーション用のスケーラブルで効率的なWebサーバーを作成できます。 最新の情報とベストプラクティスについては、常にNginxとPHPの公式ドキュメントを参照してください。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3