怎么让nginx可以识别/index.html/a/b这样的链接 我的nginx 没有fastcgi 我是把php请求反向代理给apache
展开全部
你所说的让nginx识别的/index.html/a/b是不是想让a和b作为index.html的参数?如果是这样的话可以再nginx做一个url的重写。
rewrite "^/index.html/([^\/\?]*)/([^\/\?]*)$" /index.html?arg1=$1&arg2=$2 break;
这样的话就可以把你的请求重写为如上所示的url,这样,nginx把该请求转发给apache时,apache就能按照正常的url参数处理原始的url了。
不知道我的理解是否和你想问的问题一致,但是我想你也应该是问这个。呵呵。
追答
首先可以肯定的是nginx的fastcgi模块肯定是有的,你所说的nginx没有fastcgi是因为你没有安装php-fpm吧?如果是这样的话,没有必要搞一个apache,安装一下php就可以了。
另外,nginx不认/index.html/a/b这种url,这个我有疑问。我在自己机器上实验了下,发现nginx是可以识别这种url的,日志如下:
server: localhost, request: "GET /index.html/a/b HTTP/1.1",
只是我没有做url路由所以访问错误而已。但是从日志看,nginx是可以解析你问题中提到的url的。
追问
你猜的没错 就是因为没有装php-fpm
由于版本种种原因 我无法装这个。。。
现在问题基本解决了
/index.html/a/b 在我这还是无法解析
但是
/index.php/a/b php文件可以
我要的就是PHP文件
我之前是在PHP的框架里测不行 不用框架单测PHP就可以 看来是框架没有配置对
非常感谢你的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询