PHP实现URL静态化
发布:smiling 来源: PHP粉丝网 添加日期:2013-12-19 10:18:22 浏览: 评论:0
一种就是伪静态方式,即用户和搜索引擎看到的是.html后缀的静态页面,但实际上它还是动态程序,只不过是通过某种方式进行了伪装。
这种方式也有两种实现方式:第一种是通过web服务器,进行url rewrite实现链接的静态化,下面以apache为例来说明一下其实现方式。对于有服务器配置权限的用户,推荐使用apache的mod_rewrite模块,这里假设已经安装好mod_rewrite模块,打开apache的配置文件,找到相应主机的部分,添加以下代码:
- rewriteengine on
- rewriterule ^/abc/([a-z]+)/([0-9]+).html$ /abc.php?action=$1&id=$2
然后在shell里执行service httpd reload,让apache重新载入配置就好了,但对于我们大多数人来讲,我们购买的只是空间,根本没有权限去修改apache的配置文件,那就没有办法了吗?不,当然有办法,首先我们进入到我们的空间的根目录下(如public_html),然后建立一个文件名为.htaccess的文件。这个文件内容基本如下:
- rewriteengine on
- rewritebase /
- rewriterule ^post/([0-9]+).htm read.php?1
- rewriterule ^post/([0-9]+)_([0-9]+).htm read.php?1&page=2
- rewriterule ^post/([0-9]+)_([0-9]+)_([0-9]+).htm read.php?1&page=2&=3
php程序写法
- function mod_rewrite(){
- if ( isset ( $_server [ ’ path_info ’ ])){
- $url = substr ( $_server [ ’ path_info ’ ] , 1 );
- $url = explode ( ’ / ’ , $url );
- foreach ( $url as $key => $value ){
- if ( $key % 2 != 1 ){
- if ( $value != ’’ ) $_get [ $value ] = $url [ $key + 1 ];
- $querystring [] = $value . ’ = ’ . $url [ $key + 1 ];
- }
- }
- $_server [ ’ query_string ’ ] = implode ( " & " , $querystring );
- $_server [ ’ php_self ’ ] = substr ( $_server [ ’ php_self ’ ]
- , 0 , strpos ( $_server [ ’ php_self ’ ] , ’ .php ’ ) + 4 );
- $_server [ ’ request_uri ’ ] = $_server [ ’ php_self ’ ]
- . ’ ? ’ . $_server [ ’ query_string ’ ];
- }
- }
Tags: PHP 实现 URL 静态化
- 上一篇:Ajax用户注册验证
- 下一篇:php ajax交互汉字乱码的问题解决方法
相关文章
- ·PHP 是什么?(2013-11-12)
- ·Php.ini文件位置在哪里 Php.ini文件找不到(2013-11-12)
- ·PHP 数据类型(2013-11-12)
- ·php 获取当前脚本的url(2013-11-12)
- ·php技术生成静态页面的实现(2013-11-13)
- ·缺陷月项目启动 披露PHP脚本语言漏洞(2013-11-13)
- ·在PHP中全面阻止SQL注入式攻击(2013-11-13)
- ·php生成随机密码的几种方法(2013-11-13)
- ·PHP中使用FCKeditor2.3.2配置(2013-11-13)
- ·如何使用PHP开发高效的WEB系统(2013-11-13)
- ·php:树形结构的算法(2013-11-13)
- ·php4和php5区别(2013-11-13)
- ·php数据库连接(2013-11-13)
- ·如何正确理解PHP的错误信息(2013-11-13)
- ·php页面漏洞分析及相关问题解决(2013-11-13)
- ·当在连接PHP时,抱怨一些数值没有定义参考?(2013-11-27)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)