これに対する答えは見つかりませんでした。 PHP5 + NGINX + PHP-FPMをインストールし、phpファイルを実行できない場合、「エラー!このリンクは壊れているようです」と表示されます。 CHROMEのエラー。貴重なエラーログレポートはありません。ルートにindex.phpがあり、カスタムphpinfo.phpファイルを作成してみましたが、どちらも機能しませんでした。
HTMLファイルを読み込むことはできますが、PHPはできません。
これがNGINXの私のローカルサイト設定です:
server {
listen 80;
server_name im;
access_log /var/www/website/access.log;
error_log /var/www/website/error.log;
location / {
root /var/www/website;
index index.html index.htm index.php;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/website$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
}
すべてのディレクトリの所有権をwww-data:www-dataに変更し、phpファイルに777を作成しました。 nginx、FPM、何も再起動しませんでした。
助けて? :(
「おっと!このリンクは壊れているようです」と表示されます。 CHROMEのエラー。
エラーページが512バイト未満の場合、Chromeは独自のエラーページを表示します。
fastcgi_params
に次の行があると思います:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
その場合、root
ディレクティブはlocation /
で定義されているため、location ~ \.php$
には決して適用されず、SCRIPT_FILENAME
はURIになります。
これは、root
ディレクティブをserver
レベルのコンテキストに移動することで解決できます。
server {
listen 80;
server_name im;
access_log /var/www/website/access.log;
error_log /var/www/website/error.log;
root /var/www/website;
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}