0
なんらかの理由で、Nginxはアドレスバーから.php拡張子を削除することを拒否したり、拡張子のないファイルを.phpファイルとして扱わないことを認識しません。それはしかし、何もしないnginxの設定で.phpをリダイレクトできない
server {
listen 80;
server_name www.example.com; # I put my domain name here
root /var/www/html;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
location/{
# http://www.tweaktalk.net/60/nginx-remove-php-file-extension-from-url
try_files $uri $uri/ @extensionless-php;
index index.html index.htm index.php;
}
location ~ \.php$ {
try_files $uri =404;
include /etc/nginx/fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location @extensionless-php {
rewrite ^(.*)$ $1.php last;
}
}
:
私はこのようになります/etc/nginx/conf.dへの.confファイルを追加しました。そして、はい、私はそれをexample.comとして残しました。私はそれを変更しました。nginx -t -c /etc/nginx/nginx.conf
(これを含む)を実行すると、問題なく終了します。
私には何が欠けていますか?
ログにエラーがありますか?私はあなたの設定をドッカーの 'amontaigu/nginx-php'イメージで試してみました。唯一の違いは、 'fastcgi_pass unix:/var/run/php-fpm.sock; 'です。これは問題ではありません。 – zstate
@zstateいいえ、私は特定の場所で生成されたエラーログも取得していません。アクセスログだけが生成されます。 *また、*私はどこでも私のサーバー上でphp-fpm.sockを見つけることができません... – ColonelHedgehog