【发布时间】:2017-04-11 21:34:20
【问题描述】:
我的旧服务器在 htaccess 文件中有这个:
ForceType 应用程序/x-httpd-php 文件匹配>
我有一个度假村 php 文件(没有 php 扩展名)... 所以文件是 domain.com/resort/param1/param2
我正在努力为 nginx 做同样的工作......
我已经尝试过这些项目,但没有一个工作:
位置 = /度假村/ {
try_files $uri /resort.php;
try_files $uri $uri/ @extensionless-php;
try_files $uri $uri/ $uri.html $uri.php?$query_string;
try_files $uri $uri/ /resort.php$is_args$args;
-
最后重写 ^(.*)$ /resort.php;
}
那么当这个 url 在浏览器中时,我如何将度假村文件作为 php 执行: domain.com/resort/param1/param2.php
谢谢!
PS。会喜欢一些页面/资源/教程,为不了解 nginx 的人解释“apache to nginx”:)
我去过 nginx 网站,但 IMO,我需要知道的比我做的更多,才能弄清楚或理解 nginx 网站在说什么。
更新: 我认为这很接近,但仍然无法正常工作:(
这是网址:domain.com/resort/city/state.php
这里是指令:
location ~ /resort/ {
rewrite ^/resort/(.*)/(.*) /resort/$1/$2 break;
}
【问题讨论】:
-
仅供参考。我在 plesk 服务器上,并将其添加到“附加 nginx 指令”部分......所以我想我只需要知道/添加正确的位置部分和正确的 try_files/rewrite 部分。跨度>
-
我得到错误:17938#0: *92491 FastCGI 在标准错误中发送:“访问脚本'/var/www/vhosts/domain.com/httpdocs/resort'已被拒绝(请参阅security.limit_extensions)" 同时从上游读取响应头 security.limit_extensions = FALSE