PHP伪静态Rewrite设置之APACHE篇
一、Apache配置:
1、支持httpd.conf 配置
2、支持目录 .htaccess配置(一种"分布式配置"文件针对虚拟空间,空间商不让修改Apache配置文件)
启用Rewrite(httpd.conf)
(有时候Options Indexes FollowSymLinks会出问题,只需要配置Options all即可)
LoadModule rewrite_module modules/mod_rewrite.so
启用.htaccess
AllowOverride None 修改为:AllowOverride All
二、mod_rewrite 规则:
例如:
RewriteEngine on ->启动rewrite引擎 RewriteRule ^/test([0-9]*).html$ /test.php?id=$1 ->指访问test加任意字段.html都能跳转到test.php 正则匹配的字段存放在虚拟内存匹配$1
三、mod_rewrite规则修正符
1) R 强制外部重定向
2) F 禁用URL,返回403HTTP状态码。
3) G 强制URL为GONE,返回410HTTP状态码。
4) P 强制使用代理转发。
5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。
6) N 重新从第一条规则开始运行重写过程。
7) C 与下一条规则关联
如果规则匹配则正常处理,以下修正符无效
8) T=MIME-type(force MIME type) 强制MIME类型
9) NS 只用于不是内部子请求
10) NC 不区分大小写
11) QSA 追加请求字符串
12) NE 不在输出转义特殊字符 \%3d$1 等价于 =$1
例如:
RewriteRule ^/new([0-9]*)/$ /new.php?id=$1 [R]
简单小范例:
RewriteEngine on RewriteRule ^/in(.*).html$ /index.php
相关推荐
-
php 伪静态之IIS篇
有的win主机IIS不支持 .htaccess 文件, 我在这里指的不是本地 在本地的话用apmserv服务器可以用.htaccess 文件,用apmserv服务器环境配置伪静态可以看 php 伪静态 (url rewrite mod_rewrite 重写) 这篇文章,讲的很详细. 这里我们主要讲解httpd.ini 废话不说直接看效果~ 例: www.jb51.net/index.php我们想让他用 www.jb51.net/index.html 来直接访问www.jb51.net/newxx
-
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
复制代码 代码如下: <?php //thinkphp 路由定义规则 $route = array( 'news/:action/:year\d/:month/:day'=>'news/read?year=:2&month=:3&day=:4', 'news/:action^delete|update|insert/:year\d/:month/:day'=>array( 'news/read?extra=:2&status
-
PHP伪静态页面函数附使用方法
function MakeUrl($arr){ foreach($arr as $key=>$value){ $url[]=$key."_".$value; } $tmpurl=implode("_",$url); return $tmpurl.".htm"; } functi
-
PHP 伪静态隐藏传递参数名的四种方法
伪静态方法一: 复制代码 代码如下: <?php //伪静态方法一 // localhost/php100/test.php?id|1@action|2 $Php2Html_FileUrl = $_SERVER["REQUEST_URI"]; echo $Php2Html_FileUrl."<br>"; // /php100/test.php?id|1@action|2 $Php2Html_UrlString = str_replace("
-
PHP实现伪静态方法汇总
PHP伪静态的使用主要是为了隐藏传递的参数名,下面给大家介绍php实现伪静态的方法,具体详情请看下文. 说起伪静态的实现方案,你是不是很爽快的回答"简单,配置下apache的重写规则就行了嘛" 但是你有没有发现这种情况,你最近弄了很多新功能,每天上几个新功能,每天都有好多伪静态配置,才开始两天运维同学还乐意配合,过两天运维同学就要骂了.你麻痹,脑残为什么不一次搞完,天天麻烦我.但是了,你要上线啊,不得不苦逼的求运维同学了,然后说出一句程序猿界最不要脸的话"这次最后一次改动了&
-
php伪静态之APACHE篇
1.检测Apache是否支持mod_rewrite通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到"Loaded Modules",其中列出了所有apache2handler已经开启的模块,如果里面包括"mod_rewrite",则已经支持,不再需要继续设置. 如果没有开启"mod_rewrite",则打开目录 您的apache安装目录"/apache/conf/" 下的 httpd.conf 文件,
-
基于php伪静态的实现详细介绍
1.根据$_SERVER['PATH_INFO']来操作实现. 举个列子比如你的网站的地址是 http://127.0.0.1/show_new.php/look-id-1.shtml你echo $_SERVER['PATH_INFO'] 出来的结果就会是 /look-id-1.shtml 看到这个我想大家可能已经明白了.完整的demoindex.php 复制代码 代码如下: index.php $conn=mysql_connect("localhost","root&
-
PHP 伪静态技术原理以及突破原理实现介绍
先说实现方法: inj.php: 复制代码 代码如下: <?php set_time_limit(10); $id=$_GET["id"]; $id=str_replace(" ","%20",$id); $id=str_replace("=","%3D",$id); $url="http://www.xxx.com/index.php/library/more/id/$id.html&qu
-
Linux中为php配置伪静态
mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面.下面我详细说说它的使用方法 1.检测Apache是否支持mod_rewrite 通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到"Loaded Modules",其中列出了所有apache2handler已经开启的模块,如果里面包括"mod_rewrite",则已经支持,不再需要继续设置. 如果没有开启"mod_rewrite",则打开目录
-
不用mod_rewrite直接用php实现伪静态化页面代码
在你的程序初始化时使用如下代码: 复制代码 代码如下: <?php $Php2Html_FileUrl = $_SERVER["REQUEST_URI"]; $Php2Html_UrlString = str_replace("/", "", strrchr($Php2Html_FileUrl, "/")); $Php2Html_UrlQueryStrList = explode("@", $Php
-
PHP伪静态写法附代码
比如这个网页 http://www.jb51.net/soft.php/1,100,8630.html 其实处理的脚本是soft.php 参数为1,100,8630 相当于soft.php?a=1&b=1=100&c=8630 只不过这样的URL太难记.搜索引擎也不喜欢. 真静态只是完全生成了HTML. 客户端访问的时候直接输出.不用脚本解释.在流量非常大的时候(比如每天有上百万的访问量的时候)会起到很好的效果.也就是说服务器端实实在在的存在这个HTML页面. 当然在你网站的流量没有那么大
随机推荐
- angularjs中ng-bind-html的用法总结
- 举例讲解Java中final关键字的用法
- java集合类源码分析之Set详解
- Spring2.5.6开发环境搭建图文教程
- Android用ListView显示SDCard文件列表的小例子
- php实现12306火车票余票查询和价格查询(12306火车票查询)
- ThinkPHP模板循环输出Volist标签用法实例详解
- js取得参数代码
- Python实现公历(阳历)转农历(阴历)的方法示例
- mysql_connect(): Connection using old (pre-4.1.1) authentication protocol refused
- mysql 基础教程之库与表的详解
- mysql 找回误删表的数据方法(必看)
- java 中RSA的方式实现非对称加密的实例
- jQuery动画显示和隐藏效果实例演示(附demo源码下载)
- windows 服务器注意windows的temp临时目录(temp文件过大问题)
- Android 实现局部图片滑动指引效果
- spring MVC中传递对象参数示例详解
- 标准CSV格式的介绍和分析以及解析算法实例详解
- Android 使用FragmentTabhost代替Tabhost
- 通晓网络测试常用命令