问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

怎么用url重写隐藏php后缀??

发布网友 发布时间:2022-04-28 04:58

我来回答

2个回答

懂视网 时间:2022-04-28 09:20

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,uri是/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,uri是/about,is_args为“?”,$args为id=12

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

热心网友 时间:2022-04-28 06:28

加这个

location / {
index index.php;
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
美的家用电器有哪些 美的系列品牌有哪些 现在微波炉哪个好用 美的微波炉系列有哪些 使命召唤4 用狙击枪的那关 使命召唤4撤离辐射区路怎么走 如何保护听力?你有了解过吗? 汇编语言编程有哪些特点呢? 少年的你经典语录带图片 少年的你易烊千玺台词精选 关于中秋节的日记怎么写 CENTOS Apache 无法解析PHP文件 linux下apache不解析php打开网页提示保存怎么办? apache不解析php文件只显示源码 apache可以正常启动 但是不能解析php文件 显示的是源码 按照网上的说法检查了apache php配置文件 应该没错 急,apache无法解析php文件? 为什么我的apache不解析php Apache不能解析PHP的问题 高分求助,Apache无法解析phpinfo? 求助:Apache无法解析PHP网页 如何解决ubuntu的apache2无法解析PHP的问题 1>Linux下执行php文件的命令为:php的安装路径 –f /share/web/refresh.php 用php如何读取地址栏的参数?? php怎么防止客户端更改地址栏参数,还有如果我传id 最多id=100,如果客户端改成id=200怎么办 php url中隐藏了index.php还可以用PATH_INFO吗? 隐藏a.php 比如访问a.com/a.php 浏览器地址栏不显示a.com/a.php 而显示a.com php有个函数,给地址栏传值参数加密的,好像很简单的,一下子想不起来了 thinkPHP框架的链接地址后面不显示传递的参数? 如何隐藏地址栏的参数例如 http://xxx.domain.com/abc.php?name=xz&type=32,我用的是个小的mvc框架, php 怎样过滤 ,地址栏指定参数? html如何隐藏浏览器地址栏url参数 thinkphp的url兼容模式下怎么隐藏index.php PHP如何去掉url里的.php后缀 怎么去掉织梦tag列表页url中的.php? 如何让url不会出现index.php 包括手动输入 如何隐藏url中的文件扩展名? 怎么在thinkphp中url去掉控制器与index.php 如何采用PHP输出本周日期及相应的星期,以及上周的日期和相应星期表格啊? 时间格式“11:57 星期四,九月 8 2016”如何转换为时间戳php strtotime(); PHP如何删除文件或文件夹 php怎么取消正在上传的文件? php如何删除文件夹及里面的文件? php怎么删除文件或者删除文件夹 php怎么删除被选中的文件?以及上传文件后显示其大小 PHP如何删除类似文件 php 上传的 tmp/ 目录下有很多.tmp 文件可以删除吗? php 关于上传后的临时文件如何删除的问题 php上传文件前判断是否存在该文件就删除 php:只会读写文件内容,如何删除文件内容呢?求提供个思路 php 怎样删除文件夹下的文件 python爬虫爬下来的数据怎么导入到MySQL