nginx配置对url解析有无/的问题

WBOY
Release: 2016-06-06 20:39:21
Original
1203 people have browsed it

1.LNMP环境,访问:http://60.206.137.245/index.php ok
访问:http://60.206.137.245/index.php/ 404 not found (url多一个/)

2.WAMP环境,访问: http://boss.local/index.php/, url后面有无反斜杠/,都可以正常访问

1,2 都没有配置url重写, 怎么样可以让LNMP环境下 有无/,访问都是一样的了?

ps: 记得谁说标准的url都是以/结尾,像这样 http://www.test.com/index.php/?a=aa&b=bb,
但是实际中都是:http://www.test.com/index.php?a=aa&b=bb ,比前者index.php后面少个/

回复内容:

1.LNMP环境,访问:http://60.206.137.245/index.php ok
访问:http://60.206.137.245/index.php/ 404 not found (url多一个/)

2.WAMP环境,访问: http://boss.local/index.php/, url后面有无反斜杠/,都可以正常访问

1,2 都没有配置url重写, 怎么样可以让LNMP环境下 有无/,访问都是一样的了?

ps: 记得谁说标准的url都是以/结尾,像这样 http://www.test.com/index.php/?a=aa&b=bb,
但是实际中都是:http://www.test.com/index.php?a=aa&b=bb ,比前者index.php后面少个/

请将你的 匹配 php 文件的 location 写出来

如果大致是这样的:

<code>location ~* \.php$ {
    ....
}
</code>
Copy after login

可以修改为这样:

<code>location ~* \.php? {
    ...
}
</code>
Copy after login

并启用 pathinfo,php.ini 中的 pathinfo可以关闭,在 fastcgi.conf 文件中或者在 匹配 php 文件的location 中添加 nginx 的开启规则就可以了,其实 就是定义了一个变量而已:

<code>fastcgi_param PATH_INFO ^(.+?\.php)(/.+);
</code>
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template