Nginxとphp5-fpmをインストールしたばかりで、ポート82でテストしたいので、 http://mysite.com:82/test555.php を呼び出しても何も表示されません。ちょうど白い画面。エラーなし、警告なし、何も表示されない:) nginxのエラーログとphp5-fpmのエラーログがありますが、エラーはありません。何が悪いのか分かりません。それを見つけるのを手伝ってください。
root@localhost:# echo "<?php phpinfo(); ?>" > /home/www/public_html/test555.php
root@localhost:# chmod 755 /home/www/public_html/test555.php
root@localhost:# cat /etc/nginx/sites-available/default
server {
listen 82;
root /home/www/public_html;
index index.php index.html;
server_name mysite.com;
access_log /var/log/nginx/nginx-access.com.log;
error_log /var/log/nginx/nginx-errors.com.log;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
# fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REMOTE_ADDR $remote_addr;
}
}
root@localhost:# /etc/init.d/nginx status
* nginx is running
root@localhost:# /etc/init.d/php5-fpm status
* php5-fpm is running
root@localhost:# ls -la /var/run/php5-fpm.sock
srw-rw-rw- 1 root root 0 Feb 3 01:14 /var/run/php5-fpm.sock
root@localhost:# cat /var/log/php5-fpm.log
....
[03-Feb-2014 01:14:52] NOTICE: configuration file /etc/php5/fpm/php-fpm.conf test is successful
[03-Feb-2014 01:14:52] NOTICE: fpm is running, pid 19080
[03-Feb-2014 01:14:52] NOTICE: ready to handle connections
root@localhost:# cat /var/log/nginx/nginx-access.com.log
...ip... - - [03/Feb/2014:01:29:44 +0000] "GET /test555.php HTTP/1.1" 200 5 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:26.0) Gecko/20100101 Firefox/26.0"
root@localhost:# cat /var/log/nginx/nginx-errors.com.log
root@localhost:#
何が起こっているのかを知るために次に何ができますか?正常に動作するはずです。 PHPスクリプトはcode = 200を返しますが、出力が表示されません。file_put_contentsを追加しようとしたため、nginxから呼び出されなかったため、呼び出されませんでした。
今日完全にアップグレードされたubuntu 12.04を使用しています。
これは、SO Q&Aのように聞こえますが、タイトルが nginxが空白を表示していますPHPページ 。
location
スタンザは次のようになります。
location ~ \.php$ {
include /path/to/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /path/to/www/dir$fastcgi_script_name;
}
fastcgi_param
で参照しているスクリプトへのパスに特に注意する必要があります。
これはこの問題に直面している他の人に役立つかもしれません、
Nginx confファイルに追加することもできますfastcgi_params
次の行なので、変数へのパスを指定する必要はありませんSCRIPT_FILENAME
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
これは、仮想ホストが多数ある場合に特に便利です。