nginx一招配置,帮你快速隐藏php后缀名

本文介绍了如何通过nginx的try_files指令快速隐藏PHP网站的.php后缀,实现更美观的URL。只需在nginx配置文件中添加相应配置,即可实现对URL请求的智能解析,确保即使无.php后缀,也能正确处理请求。
摘要由CSDN通过智能技术生成

转载来源 : nginx一招配置,帮你快速隐藏php后缀名 :http://www.safebase.cn/article-260260-1.html

摘要: 现在很多人都喜欢用nginx作为Web服务器部署网站,nginx配置起来也是相当的方便,如果你的网站是PHP语言开发的话,下面我们教大家简单的一招快速的隐藏网页的php后缀名,实现一种Pretty URL。使用nginx的try_files指令轻松搞定。在你的nginx配置文件(nginx.conf)里加上一句配置:location / {ttry_fil …

现在很多人都喜欢用nginx作为Web服务器部署网站,nginx配置起来也是相当的方便,如果你的网站是PHP语言开发的话,下面我们教大家简单的一招快速的隐藏网页的php后缀名,实现一种Pretty URL。
在这里插入图片描述
使用nginx的try_files指令轻松搞定。

在你的nginx配置文件(nginx.conf)里加上一句配置:

location / {
try_files $uri $uri/ $uri.php$is_args$args;
}

就可以实现隐藏网页.php后缀名了。

try_files是nginx中的一个指令,有点类似于rewrite,用于尝试寻找指令后面指定路径的文件或目录并返回。

$uri表示当前请求的URI路径,也就是URL域名后面的路径,不带参数。

$ is_args表示如果请求的URL中带有参数,则$is_args代表的是“?”,如果请求的URL中没有参数则返回空字符串,用于传参用。

$args表示请求URL中的完整的参数。

下面根据图示例子来解读下nginx服务器是如何处理的:

情形1:

假设用户访问的URL是:yuanhuaixuetang.com/about
在这里插入图片描述

nginx的解析过程如下:

该URL没有传参数, u r i 是 / a b o u t , uri 是 /about, uri/aboutis_args为空,$args也为空

nginx服务器会先去尝试寻找about文件(相对于网站根目录),如果存在则返回该文件
如果about文件不存在,则尝试寻找about/目录(相对于网站根目录),如果存在则返回。
如果about/目录不存在,则尝试寻找about.php文件(相对于网站根目录),如果存在则返回该文件并根据请求信息带上后面的请求参数,该例子中实际返回的是about.php,因为原始请求不带参数,所以实际返回的也不带参数。
如果上面的都找不到,可以根据nginx里的配置返回相应的错误信息。
情形2:

假设用户访问的URL是:yuanhuaixuetang.com/about?id=12
在这里插入图片描述
ginx的解析过程如下:

该URL有传参数, u r i 是 / a b o u t , uri 是 /about, uri/aboutis_args为“?”,$args为id=12

解析过程同上,不再细述,该情形最终实际返回给用户的是:访问域名 + about.php?id=12这个URL。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值