ホームページ >バックエンド開発 >PHPチュートリアル >Ubuntu12.04でnginx+php+mysqlを構成する
1. ubuntu nginx アップデートミラーソースを追加します
sudo vi /etc/opt/source.list
追加: deb http://nginx.org/packages/ubuntu/ precision nginx
deb-src http://nginx.org/packages/ubuntu/ precision nginx
2. パッケージ ソースを更新します:
sudo apt-get update
次のエラーが発生しました: W: GPG エラー: http://nginx.org precision リリース: 公開キーがないため、次の署名を検証できません: NO_PUBKEY ABF5BD827BD9BF62
解決方法: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABF5BD827BD9BF62
3. 再実行: sudo apt-get update
sudo apt -get install nginx
次のエラーが発生します: nginx (1.6.3-1~precise) をセットアップしています ...
nginx: [emerg] binding() to 0.0.0.0:80失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] binding() から 0.0.0.0:80 に失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] binding () から 0.0.0.0 :80 に失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] binding() から 0.0.0.0:80 に失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg ] 0.0.0.0:80 へのbind() が失敗しました (98: アドレスはすでに使用されています)
nginx: [emerg] まだbind()
invoke- rc.d: initscript nginx 、アクション "start" が失敗しました。
原因: ポート 80 はすでに他のプロセスによって使用されています。
解決策: nginx サービスのバインディング ポートをポート 88 に変更します。 sudo vi /etc/nginx/conf.d/default.conf
変更:server {
listen 88;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /usr/share/nginx/html;
インデックスindex.htmlindex.htm;
}
4. nginx を起動します
sudo /etc/init.d/nginx start
5. nginx のバージョンを確認します
nginx -v
6. php+mysql を設定します。
sudo apt-get install php5-cli php5-cgi mysql-server php5-mysql
7. FastCgi をインストールします
sudo apt-get install spawn-fcgi
8. nginx を設定します
sudo vi /etc/nginx/conf.d/default.conf
location / {
root /usr/share/nginx/html;
indexindex.phpindex.htmlindex.htm;#Addindex.php
}
9 、nginx を再起動します
sudo /etc/init.d/nginx restart
10. fastcig php
spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 を起動します。 -u nginx -f /usr/bin/php-cgi & #ここに注意してください: 初めて & を追加しましたが、理由はまだわかりません
パラメータの意味は次のとおりです
* -f FastCGI を呼び出すプロセスの実行者の場所を指定します。
* -a アドレス addr
* -p ポート port* -s Bind Unix ソケット パスへのパスを設定します
* -C 生成される FastCGI プロセスの数を指定します。デフォルトは 5 (PHP のみ)
* -P 生成される FastCGI プロセスの PID ファイル パスを指定しますprocess
* -u および -g FastCGI を実行するにはどのような ID を使用する必要がありますか (-u ユーザー -g ユーザー グループ)。Ubuntu では www-data を使用できます。その他は、nobody、Apache など、状況に応じて設定できます。など。これで、プローブまたは php ファイルを Web ルート ディレクトリに配置できるようになりました。テストしました
11. スタートアップを追加します:
sudo vi /etc/rc.local
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 - C 10 -u nginx -f /usr/bin/php-cgi exit 0 の前に追加されます。
12. 入力ファイルが指定されていないエラー
sudo vi /etc/nginx/conf.d/default.conf
このフィールド
場所 ~ 。 php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME /usr/share/nginx /html$fastcgi_script_name;
include fastcgi_params;
}
注
fastcgi_param SCRIPT_FILENAME /usr/share/nginx/html$fastcgi_script_name;
/usr/share/nginx/html を Web サイトのルート ディレクトリ (通常はこれ) に変更します。
サーバーフィールドの下のルートディレクトリは、Web サイトのルートディレクトリと一致しています
13. Yahei プローブを使用して Web サーバーを検出します。Yahei プローブの PHP ファイル (tz.php) を /usr にダウンロードします。 / share/nginx/html
#sudo chown ngixn tz.php
#sudo chmod u+rwz tz.php
「localhost:88/tz.php」と入力します。ブラウザを使用してWebサービスのステータスを確認します。
14. discuz フォーラムをインストールします
(1) /usr/share/nginx/html に新しいディレクトリ bbs を作成します: #mdir bbs、discuz X3.1 バージョンの discuz.zip をダウンロードしてアップロードしますbbs
(2) #sudo unzip discuz.zip
(3) #sudo chmod -R 777 discuz
(4) ブラウザに localhost:88/bbs/upload/install と入力して、フォーラムのインストールを開始します。