您的位置:

php伪静态实例代码,phpstudy伪静态

本文目录一览:

如何在应用PHP代码编写伪静态

以nginx为例,下面是一种解决方案:

1、在nginx配置文件中加上如下配置:

123if (!-f $request_filename) { rewrite ^/static/([^\.]*)\.html$ /dynamic/proc.php?file=$1 last;}

这样,当客户端访问的静态文件 /static/xxxx.html不存在时,就会自动访问

/dynamic/proc.php.

2、在/dynamic/proc.php中,经过相应的处理后,生成页面内容,既返回给客户端,同时也保存为文件 /static/xxxx.html

3、客户端再次访问

/static/xxxx.html时,因为此时文件已经存在,nginx就会直接返回页面,不用再访问php处理了。

4、后台做一个定时器(或者其他触发机制),定期删除已经过期的静态文件。

PHP伪静态写法附代码

比如这个网页

其实处理的脚本是soft.php 参数为1,100,8630

相当于soft.php?a=1b=1=100c=8630 只不过这样的URL太难记。搜索引擎也不喜欢。

真静态只是完全生成了HTML。

客户端访问的时候直接输出。不用脚本解释。在流量非常大的时候(比如每天有上百万的访问量的时候)会起到很好的效果。也就是说服务器端实实在在的存在这个HTML页面。

当然在你网站的流量没有那么大的时候。URL重写是最好的方法(个人观点,大流量的时候可以考虑负载均衡了。同样没有关系)

附URL重写的方法有很多种,APACHE,IISREWRITE。甚至PHP脚本都可以直接处理。比如上例中就是PHP脚本直接处理(该方法好处是大流量的时候直接减轻WEB伺服器的压力。PS:同样也是个人观点:

================================================

下面以程序为例讲一下PHP伪静态的程序实现方法,其实这方法我之前已经有在其它论坛社区发过

程序为例:

复制代码

代码如下:

?php

//利用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=1sid=100softid=8630

}else die('Path:Nothing!');

//就是这么简单了。~)

PHP代码伪静态怎么写?

代码中链接地址改成:href=show-".$row['itemid'].“.html”;

然后添加伪静态规则:RewriteRule ^(.*)/show-([0-9]+)([\-])?([0-9]+)?\.html$ $1/show.php?itemid=$2page=$4

高分求:php 程序实现伪静态

看下面的例子:

程序为例:

复制代码 代码如下:

?php

//利用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=1sid=100softid=8630

}else die('Path:Nothing!');

//就是这么简单了。~)

方法2类似:

php支持文件后面直接加上/,而且还是访问源文件,所以很容易就实现了php伪静态

关键词:php ,php伪静态, php伪静态,php实现伪静态

?php

echo "返回数组参数";

function change_url_canshu($url)

{

$url=str_replace("/","",$url);

$temp_str=str_replace(".html","",$url);

return $temp_str;

}

echo change_url_canshu($_SERVER['QUERY_STRING']);//这就是或得出来的参数

?

上面的代码保存为index.php

然后运行 index.php/1.html将获取参数1

运行index.php/1-2-3.html 将获取参数1-2-3

然后通过获取来的参数进行数据查询即可,这就是php伪静态实现的方法