PHP伪静态写法--其一
伪静态又名:URL重写
主要是为了SEO而生的。(SEO是什么?这个不用问我吧。呵呵~搞网络的不懂SEO那就~~~~)
方法一:
比如这个网页
http://www.2cto.com /soft.php/1,100,8630.html
其实处理的脚本是soft.php 参数为1,100,8630
相当于soft.php?a=1&b=1=100&c=8630 只不过这样的URL太难记。搜索引擎也不喜欢。
真静态只是完全生成了HTML。
客户端访问的时候直接输出。不用脚本解释。在流量非常大的时候(比如每天有上百万的访问量的时候)会起到很好的效果。也就是说服务器端实实在在的存在这个HTML页面。
当然在你网站的流量没有那么大的时候。URL重写是最好的方法(个人观点,大流量的时候可以考虑负载均衡了。同样没有关系)
附URL重写的方法有很多种,APACHE,IISREWRITE。甚至PHP脚本都可以直接处理。比如上例中就是PHP脚本直接处理(该方法好处是大流量的时候直接减轻WEB伺服器的压力。PS:同样也是个人观点:
================================================
下面以程序为例讲一下PHP伪静态的程序实现方法,其实这方法我之前已经有在其它论坛社区发过
程序为例:
http://www.2cto.com /soft.php/1,100,8630.html
CODE:
//利用server变量 取得PATH_INFO信息 该例中为 /1,100,8630.html 也就是执行脚本名后面的部分
if(@$path_info =$_SERVER["PATH_INFO"]){
//正则匹配一下参数
if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){
$gid =intval($arr_path[1]); //取得值 1
$sid =intval($arr_path[2]); //取得值100
$softid =intval($arr_path[3]); //取得值8630
}else die("Path:Error!");
//相当于soft.php?gid=1&sid=100&softid=8630
//就是这么简单了。~)
方法二:
一 打开 Apache 的配置文件 httpd.conf 。
二 将#LoadModule rewrite_module modules/mod_rewrite前面的#去掉
三 在 httpd.conf中添加:
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteCond %{ENV:SCRIPT_URL} (?:index|dispbbs)[-0-9]+.html
RewriteRule ^(.*?(?:index|dispbbs))-([-0-9]+).html 1.php?__is_apache_rewrite=1&__rewrite_arg=2
</IfModule>
四 要实现asp帖子URL到php帖子的映射,在 第三步的<IfModule mod_rewrite.c>和</IfModule>之间添加:
RewriteMap tolowercase int:tolower
RewriteCond %{QUERY_STRING} (?:boardid|page|id|replyid|star|skin)=d+ [NC]
RewriteRule ^(.*(?:index|dispbbs)).asp 1.php?{tolowercase:%{QUERY_STRING}}&__is_apache_rewrite=1
五 保存httpd.conf并重启Apache
方法三:
<?php
/*
功能:PHP伪静态化页面的实现
具体用法:
例如链接为:test.php/year/2006/action/_add.html
mod_rewrite();
$yearn=$_GET["year"];//结果为'2006'
$action=$_GET["action"];//结果为'_add'
*/
function mod_rewrite(){
global $_GET;
$nav=$_SERVER["REQUEST_URI"];
$script_name=$_SERVER["SCRIPT_NAME"];
$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);
$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//这句是去掉尾部的.html或.htm
$vars = explode("/",$nav);
for($i=0;$i<Count($vars);$i+=2){
$_GET["$vars[$i]"]=$vars[$i+1];
}
return $_GET;
}
mod_rewrite();
$yearn=$_GET["year"];//结果为'2006'
$action=$_GET["action"];//结果为'_add'
echo $yearn;
echo $action;
?>
<?php
/*
功能:PHP伪静态化页面的实现
具体用法:
例如链接为:test.php/year/2006/action/_add.html
mod_rewrite();
$yearn=$_GET["year"];//结果为'2006'
$action=$_GET["action"];//结果为'_add'
*/
function mod_rewrite(){
global $_GET;
$nav=$_SERVER["REQUEST_URI"];
$script_name=$_SERVER["SCRIPT_NAME"];
$nav=substr(ereg_replace("^$script_name","",urldecode($nav)),1);
$nav=preg_replace("/^.ht(m){1}(l){0,1}$/","",$nav);//这句是去掉尾部的.html或.htm
$vars = explode("/",$nav);
for($i=0;$i<Count($vars);$i+=2){
$_GET["$vars[$i]"]=$vars[$i+1];
}
return $_GET;
}
mod_rewrite();
$yearn=$_GET["year"];//结果为'2006'
$action=$_GET["action"];//结果为'_add'
echo $yearn;
echo $action;
?>
这种方法最直接...........个人认为!~~~呵呵..水木忍为您提供...
分享到:
相关推荐
PHP伪静态技术是一种在实际应用中非常常见的网页优化手段,它主要是通过将动态页面的URL转化为静态化的形式,以提高网站的用户体验和搜索引擎优化(SEO)效果。在PHP环境中,伪静态可以有效地模拟静态页面的访问,而...
在网页开发领域,PHP是一种广泛使用的服务器端脚本语言,尤其在动态网站的构建中扮演着重要角色。...综上所述,PHP伪静态方法是优化网站SEO和提升用户体验的有效途径,开发者可以根据项目需求选择合适的技术方案。
1. **伪静态概念**:伪静态是一种技术手段,用于将原本动态的URL转化为类似于静态页面的URL格式,例如将`forum.php?mod=viewthread&tid=123`转化为`forum-123.html`。这样做的好处在于,静态URL更容易被搜索引擎抓取...
本文将深入探讨PHP实现伪静态的多种方法,并提供实用全面的解决方案。 1. **URL重写** URL重写是实现伪静态最常用的方法,通过Apache或Nginx服务器的配置文件进行设置。在Apache中,我们通常使用`.htaccess`文件,...
总结,PHP伪静态是通过URL重写技术实现的,可以使用Apache的mod_rewrite或Nginx的rewrite规则,配合PHP处理请求,达到模拟静态页面的效果。了解和掌握这项技术对于提高网站质量及SEO优化至关重要。在实际项目中,...
实现PHP伪静态主要有以下方法: 1. **URL重写**:通过Apache的mod_rewrite模块或Nginx的rewrite规则,将动态URL重写为静态化的格式。配置合适的规则,可以让动态请求看起来像静态页面。 2. **PHP内置函数**:使用`...
本文将深入探讨“tags标签伪静态”的方法,这是一种针对网站标签(tags)页面进行伪静态处理的技术实现。 ### 一、什么是伪静态? 伪静态,英文名为Pseudo Static,是指将动态网页的URL伪装成静态网页的URL,即...
### ASP程序实现网页伪静态页面源代码解析 在探讨如何使用ASP(Active Server Pages)程序实现网页伪静态页面源代码之前,我们先来理解一下何为“伪静态”以及其重要性。 #### 伪静态的概念与意义 伪静态,简单来...
### PHP伪静态化页面的实现 ...通过上述步骤,可以有效地实现PHP伪静态页面的功能,不仅提高了网站的美观度,还增强了搜索引擎的友好性。此外,这种方法还能够提升用户的体验感,使网站显得更加专业和高效。
伪静态页面,顾名思义,是一种将动态网页以静态HTML页面的形式呈现的技术,它保留了动态网页的便利性,同时提供了静态页面的诸多优点。 **伪静态页面的优点** 1. **SEO优化**:搜索引擎更喜欢静态HTML页面,因为...
在PHP伪静态中,`index.php`会接收并解析经过重写后的URL,根据URL的结构调用相应的控制器和方法,执行业务逻辑。例如,一个伪静态URL "site.com/article/123.html" 实际上可能被解析为 "index....
HTAccess实现伪静态方法的优点是可以将动态页面伪装成静态页面,从而提高网站的访问速度和搜索引擎优化的效果。但是,需要注意的是伪静态方法只是在URL处理了一下,而没有生成真正的静态文件在服务器上,因此需要对...
php伪静态实现方法,mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面。下面我详细说说它的使用方法
在IT行业中,网页的静态化和伪静态化是优化网站SEO(搜索引擎优化)和提高用户体验的重要手段。这里的“HTM页面伪静态 Demo”是一个示例,旨在帮助学习者理解如何将动态的HTM(HTML)页面转换为看起来像是静态的URL...
本文将详细探讨“伪静态插件”以及如何在ASP环境下实现伪静态,并提供关于个性化后缀和网站后缀修改的一些建议。 首先,我们要理解什么是伪静态。静态网页是指内容固定、不依赖服务器动态生成的网页,而动态网页则...
伪静态技术是Web开发中的一种常见优化手段,主要用于将动态网页的URL转化为静态网页的URL形式,以提高网站的搜索引擎友好性(SEO)和用户体验。在这个压缩包中,可能包含了实现伪静态功能的源代码,适合需要进行这...
这个标题所指的测试文件主要用于检测服务器环境是否支持使用PHP的mod_rewrite模块来实现伪静态功能。下面将详细讲解这个主题。 **PHP-_rewrite** PHP-rewrite是基于Apache Web服务器的mod_rewrite模块与PHP结合的一...
在IT行业中,页面伪静态是一种常见的优化技术,主要用于提高网站的搜索引擎友好度和用户体验。页面伪静态,顾名思义,...在实际应用中,需要结合各种技术手段,如URL重写、缓存策略等,来实现高效且友好的伪静态页面。
【伪静态注入中转突破伪静态】是一种网络安全技术,用于在动态网站中模拟静态页面,以提高搜索引擎优化和用户体验。然而,这种技术也带来了一定的安全隐患,因为伪静态URL结构使得传统SQL注入攻击手段变得更为复杂。...
在IT行业中,伪静态技术是一种常见的优化网页SEO(搜索引擎优化)的方法,它通过将动态URL转化为看似静态的URL,以提高网站的可读性、用户体验和搜索引擎的友好性。在这个场景下,"伪静态分页解决路径问题"指的是在...