PHP - 伪静态

1、依靠正则表达式:

<?php

/*
 * PATH_INFO(apache默认支持,nginx默认不支持需要配置)
 * 通过正则表达式去分析伪静态URL地址
 * 原地址:http://localhost/test/php_staticize/newsList.php?type=2&category=1
 * 伪地址:http://localhost/test/php_staticize/newsList.php/2/1.html
 */

//var_dump($_SERVER["PATH_INFO"]);

$pattern = "/^\/(\d+)\/(\d+).html/"; //php正则需要用//括住
$subject = $_SERVER["PATH_INFO"];
if (preg_match($pattern, $subject, $arr)) {
    var_dump($arr); //Array ( [0] => /2/1.html [1] => 2 [2] => 1 )
    $type = $arr[1]; //参数赋值
    $category = $arr[2]; //参数赋值
} else {
    echo ‘URL错误请检查‘;
}

2、WEB服务器rewrite配置

 • apache下rewrite配置

  开启httpd.conf中的LoadModule rewrite_module modules/mod_rewrite.so模块。

  开启httpd.conf中的Include conf/extra/httpd-vhosts.conf模块。

  配置conf/extra/httpd-vhosts.conf文件,既是配置URL的文件。

  配置apache多站点(http://www.cnblogs.com/MrLenon/p/3992380.html)。

  

 • nginx下rewrite配置

时间: 2024-08-25 18:34:50

PHP - 伪静态的相关文章

[错误代码:0x80070002]IIS7及以上伪静态报错404

故障现象:DTCMS开启伪静态功能,VS2010预览正常,发布到IIS后报错404.0错误 (WIN7,WIN8,SERVER2008).模块IISWebCore通知MapRequestHandler处理程序StaticFile错误代码 0x80070002关闭URL重写(伪静态)网站... 故障现象:DTCMS开启伪静态功能,VS2010预览正常,发布到IIS后报错404.0错误(WIN7,WIN8,SERVER2008). 模块 IIS Web Core 通知 MapRequestHandl

apache 伪静态 .htaccess

虽然网上有很多教程,但是我在这里进行简单对我用到的总结一下. 加载Rewrite模块: 在conf目录下httpd.conf中找到 LoadModule rewrite_module modules/mod_rewrite.so 这句,去掉前边的注释符号"#",或添加这句. .htacess文件,开头内容如下: RewriteEngine on RewriteEngine on是代表开启rewrite.在正是写规则前,先为大家讲一下重写中设计到的特殊字符的含义.和普通正则是通用的! *

dedecms织梦移动版伪静态 - 实现与PC电脑版静态地址url一致教程+伪静态规则

电脑版静态效果 移动版伪静态效果 以下教程所修改的文件(utf8/gbk)打包下载: 修改或者覆盖文件之前请备份以下4个文件\m\index.php\m\list.php\m\view.php\include\arc.listview.class.php 链接: https://pan.baidu.com/s/1i49ABe1 密码: 2wid 电脑版静态生成这里就不多说了,移动版伪静态操作教程如下: 1.移动版域名 m.123.com 解析并指向绑定目录到网站目录的m文件夹 2.后台-系统配置

dedecms织梦联动筛选[伪静态-目录形式]

演示效果 dedecms织梦联动筛选[伪静态-目录形式],网站用的是静态,筛选用的是伪静态,筛选的伪静态地址以字段和键值目录形式呈现,让筛选URL与静态保持一致.如: 静态栏目页 http://www.123.com/dianshi/ 静态栏目页分页 http://www.123.com/dianshi/list_1_2.html 伪静态筛选页 http://www.123.com/dianshi/area_0/ 伪静态筛选分页 http://www.123.com/dianshi/area_0

如何分辨别人的网站是伪静态还是纯静态

IE浏览器 打开你想判断的网站后,再在网址框中输入javascript:alert(document.lastModified).此方法可以判断一个网页的最后更新时间.如果这个时间与现在的时间相同,说明是伪静态的,反之为真静态的. 火狐Firefox浏览器 先用火狐打开一个网页,等网页完全打开后进入FireFox的控制台,"工具"-“错误控制台”-快捷键:Shift+Ctrl+J,然后在控制台里面输入入:alert(document.lastModified),查看最后修改时间并记录.

伪静态的实现

伪静态的实现 简介 主要使用Apache提供的一个rewrite模块来实现,可以实现URL地址的重写 ? 使用 开启配置 更改虚拟主机里面的配置 在网站根目录建立一个.htaccess文件 ? 案例1 实现将动态URL地址转换成一个静态的HTML地址 ? http://local.order.com/index.html ---->Apache服务器 (rewrite重写---->index.php文件)---->返回给浏览器 RewriteEngine On #开启rewrite功能

黄聪:阿里云Windows2012服务器IIS8实现wordpress完美伪静态(ISAPIRewritev)

1.下载64位URL重写组件:http://www.iis.net/downloads/microsoft/url-rewrite 2.暂停IIS,安装组件 3.重启IIS,到IIS中找到你要设置的网站,点击选中,在右侧的工具中可看到URL Rewrite功能: 4.选中URL Rewrite功能,在右侧找到Import Rules...(导入规则)功能,点击. 5.选择你的.htaccess文件,然后点击Import按钮,最后点击右侧的应用按钮,就可以成功配置伪静态了.

MVC3/4伪静态 jexus mvc伪静态

第一步修改RouteConfig.cs文件 public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); routes.MapRoute( "ActionHtml", // action伪静态 "{controller}/{action}.jsp/{id}",// 带有参数的 URL new

什么是伪静态,以及apache 如何实现伪静态

原文链接:http://www.cnblogs.com/ainiaa/archive/2010/07/25/1784564.html php伪静态 一直在做php的开发工作.在开发的过程中老早就听说了“伪静态”这一说.但是一直没有对其进行了解. 今天终于下定决定 要好好的了解下这方面的内容. 首先,什么是伪静态: 伪静态又名URL重写,是动态的网址看起来像静态的网址.换句话说就是,动态网页通过重写 URL 方法实现去掉动态网页的参数,但在实际的网页目录中并没有必要实现存在重写的页面. 另外在补充

转:CI伪静态化

去掉php框架CI默认url中的index.php 2010-03-17 17:33:07|  分类: php框架ci |字号 订阅 CI默认的rewrite url中是类似这样的,例如你的CI根目录是在/CodeIgniter/下,你的下面的二级url就类似这样http://localhost/CodeIgniter/index.php/welcome.不太好看,怎么把其中的index.php取掉呢? 解决方法如下: 去掉 URL 中的 index.php 首先,你要清楚自己的 Web 服务器