• 技术文章 >后端开发 >PHP问题

    url中如何隐藏.php

    藏色散人藏色散人2020-08-26 09:35:50原创910

    url中隐藏“.php”的方法:首先找到并打开“nginx.conf”配置文件;然后添加内容“location / {ttry_files $uri $uri/ $uri.php$is_args$args;}”;最后保存修改即可。

    推荐:《PHP视频教程

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

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

    location / {ttry_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没有传参数,uri/abouturi 是 /about,is_args为空,$args也为空

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

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

    该URL有传参数,uri/abouturi 是 /about,is_args为“?”,$args为id=12

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

    以上就是url中如何隐藏.php的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:nginx .php
    上一篇:php日期如何转换成星期 下一篇:apache2无法解析php怎么办
    Web大前端开发直播班

    相关文章推荐

    • Apache如何隐藏index.php入口文件?• apache如何隐藏index.php• 怎样隐藏nginx和php版本• php怎么实现隐藏数字中间四位

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网