Ubuntu で nginx+php+fastcgi を構成するプロセス
過去 2 日間、Ubuntu14.04 で nginx と php 環境をセットアップする必要があり、fastcgi の問題に多くの時間を費やしました。 , そこで、プロセス全体を記録してみんなに共有することにしました。
準備:
apt-get update
1. nginx をインストールして起動します
apt-get install nginxsudo /etc/init.d/nginx start
2. php と関連する
sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql
3. FastCGI
を実行する前にこれを行う必要があります。 FastCGI については、C/S 構造を採用しており、HTTP サーバーが動的リクエストを受信したときに、HTTP サーバーとスクリプト解析サーバーを分離することができます。リクエストは FastCGI プロセスに転送され、FastCGI プロセスは動的スクリプトを実行し、結果を HTTP サーバーに返します。これにより、HTTP サーバーは最終的に結果をブラウザに返します。これにより、リクエストの応答速度が大幅に向上します。
FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI を実装するにはいくつかの方法があります
PHP-CGI は、PHP に付属する FastCGI マネージャーです。次のコマンドを使用して PHP-CGI を開始できます。
php- cgi -b 127.0.0.1:9000
PHP-CGI には 2 つの問題があります。1 つは、php.ini を変更した後、有効にするために php-cgi を再起動する必要があることです。もう 1 つは、php.ini を変更した後に php を実行できないことです。 php-cgi プロセスがクラッシュするか強制終了されます。
PHP-FPM は、PHP 5.3.3 以降に追加された新しい CGI マネージャーです。PHP の設定変更後の再起動の必要がなく、デーモンの追加により強制終了してもすぐに再起動できます。
Spawn-FCGI は、単なる PHP 用のスクリプト言語ではなく、汎用の FastCGI マネージャーです。ただし、効率と CPU 使用率の点では PHP-FPM より劣ります。
4. PHP-FPM
PHP-FPM が最良の方法なので、今すぐ設定しましょう。 PHP-FPM は独立したプロセスであるため、Nginx と通信する必要があります。現在、通信方式には tcp とソケットの 2 つがあります。 2 つの方法の違いと設定方法については、次の 2 つの記事を参照してください:
nginx と php-fpm の通信は Unix ソケットまたは TCP を使用し、その設定
Php-fpm TcpSocket と UnixSocket
ここで設定方法を見てみましょう。どちらの方法も主に nginx 設定ファイル (/etc/nginx/sites-available/default) と fpm 設定ファイル (/etc/php5/fpm/pool.d/www.conf) を変更します。 )。
TCP 構成方法では、nginx 構成ファイル内の対応するリバース プロキシの fastcgi_pass パラメーターを 127.0.0.1:9000 に変更し、fpm 構成ファイル内の listen パラメーターを 127.0.0.1:9000 に変更する必要があります。
ソケット構成方法では、nginx 構成ファイル内の対応するリバース プロキシの fastcgi_pass パラメーターを unix:/dev/shm/fpm-cgi.sock に変更し、fpm 構成ファイル内の listen パラメーターを / に変更する必要があります。 dev/shm/fpm-cgi.sock で、高い同時実行性を考慮する場合は、listen.backlog パラメータを -1 に変更すると、メモリ バックログが無限になります。さらに、/etc/sysctl.conf を変更してカーネル レベルで同時接続の数を増やすこともできます。
sudo echo 'net.core.somaxconn = 2048' >> /etc/sysctl.confsudo sysctl -p
両方の設定方法を変更した後、php-fpm と nginx を再起動する必要があります。
sudo service php5-fpm restartsudo /etc/init.d/nginx reload
5. PHP サイトを実行します
上記の設定が完了したら、テストするための簡単な PHP ページを作成できます。
Web サイトのディレクトリを作成します:
sudo mkdir /var/www/
nginx 構成ファイルのルート ディレクトリを root /var/www に変更します。
テスト ページを追加します:
sudo vi /var/www/test.php
次のコードを追加します。リーリー
この時、ブラウザにアドレス http://localhost/test.php を入力すると、phpの情報が表示されます。
一般的に使用されるコマンド:
1. nginx の起動エラーを確認します
<?php phpinfo();?>
役に立ったと思われる場合は、助けていただければ幸いです、ありがとう:)
この記事のアドレス:
転載の際は出典を明記してください、よろしくお願いします!

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

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

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

ホットトピック









PHPクライアントURL(CURL)拡張機能は、開発者にとって強力なツールであり、リモートサーバーやREST APIとのシームレスな対話を可能にします。尊敬されるマルチプロトコルファイル転送ライブラリであるLibcurlを活用することにより、PHP Curlは効率的なexecuを促進します

顧客の最も差し迫った問題にリアルタイムでインスタントソリューションを提供したいですか? ライブチャットを使用すると、顧客とのリアルタイムな会話を行い、すぐに問題を解決できます。それはあなたがあなたのカスタムにより速いサービスを提供することを可能にします

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。
