サーバーの LNPM 環境をインストールして構成する場合、複数のバージョンの PHP の共存を考慮する必要があります。以下は、Linux システムで Nginx に複数のバージョンの PHP をインストールする方法です。 Linux バージョン: 64 ビット CentOS 6.4 Nginx バージョン: nginx1.8.0 PHP バージョン: php5.5.28 および php5.4.44 php5.5 がメインバージョンで、/usr/local/php ディレクトリにインストールされている場合は、他のバージョンの php をインストールして、異なるインストール ディレクトリを指定できることに注意してください。 PHPをインストールする # wget http://cn2.php.net/get/php-5.4.44.tar.gz/from/this/mirror # tar zxvf php-5.4.44.tar.gz # php-5.4.44をインストールします #./configure --prefix=/usr/local/php5.4.44 \ --curl \ で --freetype ディレクトリ \ --gd \ で --gettext \ で --with-iconv-dir \ --kerberos \ で --with-libdir=lib64 \ --with-libxml-dir \ --mysql \ で --mysqli \ で --openssl \ で --pcre正規表現 \ --pdo-mysql \ で --pdo-sqlite \ で --梨付き\ --png-dir \ で始まる --xmlrpc \ で --xsl \ で --with-zlib \ --enable-fpm \ --enable-bcmath \ --enable-libxml \ --enable-inline-optimization \ --enable-gd-native-ttf \ --enable-mbregex \ --enable-mbstring \ --enable-pcntl \ --enable-shmop \ --enable-soap \ --enable-sockets \ --enable-sysvsem \ --enable-xml \ --enable-zip # 作成 && インストール # cp -R ./sapi/fpm/php-fpm.conf /usr/local/php5.4.44/etc/php-fpm.conf # cp php.ini-development /usr/local/php5.4.44/lib/php.ini # cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm5.4.44 メインバージョン 5.5.28 は 9000 をリッスンするため、php-fpm.conf のリッスン ポートを 9001 に変更します。 ; 注意: この値は必須です。 リッスン = 127.0.0.1:9001 php-fpmを起動する php-fpm5.4.44 は、以下のコマンドで実行できます。 PHPのインストールが正常に完了しました。進行状況を表示します。 #ps 補助|grep php これでphp-fpmが起動しました。 Nginx を設定する 新しいポート 8054 構成を追加し、それを 9001 と指定されたディレクトリにポイントするだけです。 サーバー{ 聞く 8054; server_name ローカルホスト; 位置 / { #ルートhtml; ルート /usr/www5.4.44; インデックス index.html index.htm; } エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルートhtml; } 場所 ~ \.php$ { ルートhtml; 127.0.0.1:9001; をロードします。 fastcgi_index インデックス.php; fastcgi_params を含めます。 fastcgi_param SCRIPT_FILENAME /usr/www5.4.44$fastcgi_script_name; } } nginxの設定ファイルnginx.confは # cd /usr/local/nginx/conf 完全な nginx 構成は次のとおりです。 #ユーザーnobody; ワーカープロセス 4; #error_log ログ/error.log; #error_log ログ/error.log 通知; #error_log ログ/error.log 情報; #pid ログ/nginx.pid; イベント { ワーカー接続 1024; } http { mime.types を含めます。 デフォルトタイプ アプリケーション/オクテットストリーム; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log ログ/access.log メイン; ファイル送信オン; #tcp_nopush オン; #キープアライブタイムアウト 0; キープアライブタイムアウト65; #gzip オン; サーバー{ 聞く 80; server_name ローカルホスト; #文字セット koi8-r; #access_log ログ/host.access.log メイン; 位置 / { #ルートhtml; ルート /usr/www; インデックス index.html index.htm; } #エラーページ 404 /404.html; # サーバーのエラーページを静的ページ /50x.html にリダイレクトします # エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルートhtml; } # PHP スクリプトを 127.0.0.1:80 で listen している Apache にプロキシします # #場所 ~ \.php$ { # プロキシパス http://127.0.0.1; #} # PHP スクリプトを 127.0.0.1:9000 で待機している FastCGI サーバーに渡します # #場所 ~ \.php$ { #ルートhtml; #fastcgi_pass 127.0.0.1:9000; # fastcgi_index インデックス.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; #fastcgi_params を含めます。 #} 場所 ~ \.php$ { ルートhtml; 127.0.0.1:9000; をデフォルトとして設定します。 fastcgi_index インデックス.php; fastcgi_params を含めます。 fastcgi_param SCRIPT_FILENAME /usr/www$fastcgi_script_name; } # Apacheのドキュメントルートが.htaccessファイルへのアクセスを拒否する # nginxのものと一致します # #場所 ~ /\.ht { # すべて拒否; #} } サーバー{ 聞く 8054; server_name ローカルホスト; 位置 / { #ルートhtml; ルート /usr/www5.4.44; インデックス index.html index.htm; } エラーページ 500 502 503 504 /50x.html; 場所 = /50x.html { ルートhtml; } 場所 ~ \.php$ { ルートhtml; 127.0.0.1:9001; をロードします。 fastcgi_index インデックス.php; fastcgi_params を含めます。 fastcgi_param SCRIPT_FILENAME /usr/www5.4.44$fastcgi_script_name; } } # IP、名前、ポートベースの設定を組み合わせた別の仮想ホスト # #サーバー{ # 8000を聴く; # somename:8080 をリッスンします。 # server_name somename alias another.alias; # 位置 / { #ルートhtml; # インデックス index.html index.htm; # } #} # HTTPS サーバー # #サーバー{ # 443 ssl をリッスンします。 # サーバー名 localhost; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_cache 共有:SSL:1m; #ssl_session_timeout 5分; # ssl_ciphers HIGH:!aNULL:!MD5; # ssl_prefer_server_ciphers オン; # 位置 / { #ルートhtml; # インデックス index.html index.htm; # } #} } nginxを再起動する # /usr/local/nginx/sbin/nginx -s リロード ファイアウォールで新しいポートを開く必要があることに注意してください。そうしないと、アクセスできなくなります。 ファイアウォールの設定 XP などのローカル マシン (centos6 の場合) で仮想マシンの Web ページにアクセスする場合は、ファイアウォールを変更してポート 80 を有効にする必要があることに注意してください。 # /etc/sysconfig をコピーする iptablesファイルを変更するか、vimで直接編集します。 # vim /etc/sysconfig/iptables ファイアウォールでポート 80 を開くには、次の行を追加します。 -A 入力 -m 状態 --state 新規 -m tcp -p tcp --dport 8054 -j 受け入れる ファイアウォールを再起動する # /etc/init.d/iptablesを再起動します phpinfo() をチェックして、テストが成功したかどうかを確認します。 上記は、Linux システムで Nginx 用の PHP の複数のバージョンをインストールする方法です。皆様のお役に立てれば幸いです。 以下もご興味があるかもしれません:
|
<<: MacでMysqlのルートパスワードを忘れた場合の解決方法
>>: MySQL パーティションテーブルの制限と制約の詳細な説明
この記事で説明する等高レイアウトでは、純粋な CSS を使用して、要素の高さを手動で設定することなく...
このチュートリアルの動作環境: Windows 7 システム、nodejs バージョン 12.19....
Linuxバージョン: CentOS 7 [root@azfdbdfsdf230lqdg1ba91 ...
序文ルーティングの管理は、ほとんどのシングルページ アプリケーションにとって不可欠な機能です。 Vu...
1. 準備1.1 港ダウンロードハーバーダウンロードアドレス:リンクリンクの説明を追加し、必要なバー...
入力タイプ「file」とは何ですか?これが何なのかは説明する必要はないと思います。誰もが知っているこ...
1. MySQLイメージをダウンロードするコマンド: docker pull mysql 2. コン...
1. エフェクトHTMLを送信する <div id="送信ボタン">...
冒頭に書いた以前、Renren で JS ベースのスクリーンショット ソリューションについて説明した...
MongoDB はクロスプラットフォームであり、Windows と Linux の両方にインストール...
システムド: CentOS 7のサービスsystemctlスクリプトは、/usr/lib/syste...
序文:この記事では主にMySQLのロングトランザクションに関する内容を紹介します。例えば、トランザク...
この記事の例では、多人数チャットルームを実装するためのjsコードの具体的なコードを参考までに共有して...
序文上記の Web ページ スタイルを記述しているときに、スタイルの値をどのように変更しても、ページ...
目次序文1. データを抽出する2. エイリアス値3. 動的プロパティ4. オブジェクトの分解における...