url中隐藏php后缀,url中如何隐藏.php

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

1ff8c37232b4ab6a5f0ce92497e20c81.png

推荐:《PHP视频教程》

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

db5e86bce7104d5310aba5cc8fb5ec5c.png

使用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

0d75ba612054fb5d2196de588b1550ca.png

nginx的解析过程如下:

该URL没有传参数,uri是/about,uri 是 /about,uri是/about,is_args为空,$args也为空

nginx服务器会先去尝试寻找about文件(相对于网站根目录),如果存在则返回该文件

如果about文件不存在,则尝试寻找about/目录(相对于网站根目录),如果存在则返回。

如果about/目录不存在,则尝试寻找about.php文件(相对于网站根目录),如果存在则返回该文件并根据请求信息带上后面的请求参数,该例子中实际返回的是about.php,因为原始请求不带参数,所以实际返回的也不带参数。

如果上面的都找不到,可以根据nginx里的配置返回相应的错误信息。

情形2:

假设用户访问的URL是:yuanhuaixuetang.com/about?id=12

e71539fe8ca771d9213646c92dacc2ac.png

ginx的解析过程如下:

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/558047.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

php字符串中单引号与双引号的区别,简单概括PHP的字符串中单引号与双引号的区别...

今天有个朋友问起,说下区别,顺便复习下。单引号与双引号的不同:" "双引号里面的字段会经过编译器解释,然后再当作HTML代码输出。 单引号里面的不进行解释,直接输出。单引号解析的时间比双引号快 。单引号支持转义符,双引号支持的转…

php 判断ajax访问,PHP里判断是否Ajax请求

$.ajax({type: ‘POST’,url: ‘http://www.yourwebsite.com’,beforeSend: function (XMLHttpRequest) {XMLHttpRequest.setRequestHeader(“request_type”,”ajax”);},data: ‘testtest’,success: function(rs) {alert(‘ok’);}}});PHP代码:echo isset($_SERV…

discuz手机客户端java,Discuz!7.2让高级搜索更全面

Discuz! 7.2 调整了对帖子的高级搜索,使高级搜索的搜索选项更细化,覆盖面更广。一、高级搜索功能介绍高级搜索界面如下图所示:1、按作者:此处可以填写发帖作者全名,也可以使用通配符"*",如填写&q…

php面向对象异常处理,PHP 错误和异常处理(下)

PHP 错误和异常处理(下)由 学院君 创建于9个月前, 最后更新于 7个月前版本号 #11723 views2 likes0 collects上篇我们讲了 PHP 中的错误报告和捕获,今天,我们来看看 PHP 程序中的异常处理。错误 vs. 异常错误与异常可以看作一对孪生兄弟,从严…

php设计者,PHP设计者---composer

Composer 是 PHP5以上 的一个依赖管理工具。它允许你申明项目所依赖的代码库,它会在你的项目中为你安装他们。Composer 不是一个包管理器。是的,它涉及 "packages" 和 "libraries",但它在每个项目的基础上进行管理&#…

java内部类练习题,学习笔记——Java内部类练习题

1.尝试在方法中编写一个匿名内部类。package com.lzw;public class AnonymityInnerClass {}class OuterClass4{public OutInterface doit(final String s){return new OutInterface(){private int i0;public int getValue(){System.out.println(s);return i;}public void f(){S…

php左边按钮右边显示,右侧操作按钮

## 方法原型:addRightButton($type , $title , $url , $linkType link, $attr [])> 关于按钮的详细说明请参考[按钮操作](./按钮操作.md)一节。> 注意: 添加操作按钮必须在添加列时添加操作栏一列, 否则即使加了右侧按钮也不会显示## 参数说明&#xff1…

电脑运行java游戏,电脑运行软件卡顿?这几招游戏或是办公,让你速度飞起!...

许多朋友想知道他们已经购买了高端计算机,但是无论玩游戏还是运行软件,他们仍然陷于困境。今天,让我们教大家一个简单的方法来提高计算机性能。焦点:此方法大大提高了用户对高度配置的计算机的影响。如果计算机的设置不太高&#…

c matlab 数据类型,matlab中数据类型与c语言数据类型的区别?

matlab中数据类型与c语言数据类型的区别?mip版 关注:233 答案:3 悬赏:0解决时间 2021-02-23 08:46已解决2021-02-22 22:32matlab中数据类型与c语言数据类型的区别?最佳答案2021-02-22 22:42简单谈一下。1.好多类型是对应的。输入一个数,ma…

mie散射粒子消光系数 matlab代码,一种球形粒子GMie散射效率极值的算法

一种球形粒子G Mie散射效率极值的算法【专利摘要】球形粒子的G?Mie散射问题属于物理光学领域,涉及光与原子的相互作用。G?Mie理论在有着广泛的用途,如分析激光衍射粒度,光镊,激光制冷,大气理论和温室效应分析等。目前…

oracle util_mail,Oracle UTL_MAIL邮件包程序使用实践

在《使用包实现存储过程邮件发送》(http://space.itpub.net/17203031/viewspace-700327)中,笔者已经初步介绍了使用UTL_MAIL包实现系统邮件发送功能。UTL_MAIL包较传统的PL/SQL邮件发送已经有很大改进和简化。但是对于一般系统而言,邮件功能设置(如发送、…

oracle+内存错误,oracle使用内存的错误,ORA-27102: out of memory

网上参阅资料,整理到这里,以备查阅。主要由于内存的分配问题,导致oracle数据库启动失败。数据库关闭之后重新启动,出现下面的错误:SQL> startup;ORA-27102: out of memoryLinux-x86_64 Error: 28: No space left on…

oracle连接数达不到上限,Oracle超出最大连接数问题及解决(转)

用过Oracle的应该都熟悉如何查看和设置Oracle数据库的最大连接数。这里就再啰嗦一遍。查看当前的连接数,可以用select count(*) from v$process;设置的最大连接数(默认值为150)select value from v$parameter where name ‘processes’;修改最大连接数alter system …

oracle批量把小写转换成大写,oracle数据库批量将表名小写转大写

ORACLE10g数据库,Sqlserver通过DTS导出数据到ORACLE后。查询表数据时输入:select * from "表名" ;查询数据执行正常。如果输入:select * from 表名;提示ORA-000942表或视图不存在后来发现原因是:导入oracle数…

oracle数据库安装提示M,Python第13课:oracle数据库的安装

Python第13课:oracle数据库的安装时间 2019-01-22下午4:30主讲 罗恒丰地点 四楼电教室版本:11.2大小:2.06G安装文件在专班ftp里python安装文件的文件夹。一.找到 stage/cvu/cvu_prereq.xml ,编辑系统名,以适…

linux 文件怎么不让删,请问如何设置权限,可以禁止用户删除文件

原帖由 WHITLACK 于 2009-9-28 08:48 发表 针对某个文件,如何设置权限,可以禁止删除?文件权限的r-w-x好像不能禁止删除的啊,谢谢指教!1:使用粘滞位可以做到,下面是介绍.强制位与冒险位、粘滞位针对u,g&…

linux查看etl进程,常见ETL工具

【国外】datastage点评:最专业的ETL工具,价格不菲,使用难度一般-------------&#xf…

linux运行中望cad,国产CAD软件中望的Linux版适配UOS, 我在国产系统里试了试

可能大家都知道,以往我们在国产操作里运行的软件,很多都是国外开源的软件。在以前很长一段时间里,国产操作中,国内企业很少去适配的。据说,国产深度之所以有很多国产软件,其中一个原因就是他们一家一家去拜…

linux内核死锁检测机制 | oenhan,Linux内核CPU负载均衡机制 | OenHan

还是神奇的进程调度问题引发的,参看Linux进程组调度机制分析,组调度机制是看清楚了,发现在重启过程中,很多内核调用栈阻塞在了double_rq_lock函数上,而double_rq_lock则是load_balance触发的,怀疑当时的核间…

linux适应环境,Linux从入门到适应(一):VSCode C++环境配置

作为在Windows环境下习惯使用Visual Studio IDE的人,对于Linux环境下的Vim编辑使用十分难受,虽然网上很多人说vim非常牛逼和强大,但是我更加习惯于使用VS code的界面,所以我选择VS code作为编辑器使用。VS code本身是一个编辑器&a…