PHPwind高级伪静态规则及方法
phpwind iis下伪静态规则
[ISAPI_Rewrite]
RewriteRule ^(.*)/(.*)-htm-(.*)-(.*)\.html$ $1/$2\.php\?$3=$4
RewriteRule ^(.*)/read-htm-tid-(.*)\.html$ $1/read\.php\?tid=$2
RewriteRule ^(.*)/thread-htm-fid-(.*)\.html$ $1/thread\.php\?fid=2
RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index\.php\?$2
phpwind apache下伪静态规则
RewriteEngine On
RewriteRule ^(.*)/thread-htm-tid-(\d+)-(.*).html $1/thread.php?fid=$2
RewriteRule ^(.*)/read-htm-tid-(\d+)-(.*).html $1/read.php?tid=$2
RewriteRule ^(.*)/commtopics-(\d+)-(.*)$ $1/thread.php?fid=$2&page=$3
RewriteRule ^(.*)/commtopics-(.*)$ $1/thread.php?fid=$2&page=$3
RewriteRule ^(.*)/article-(\d+)-(\d+)-(.*).html$ $1/read.php?tid=$2&page=$3&fpage=$4
RewriteRule ^(.*)/article-(\d+)-(.*).html$ $1/read.php?tid=$2&page=$3
RewriteRule ^(.*)/article-(.*).html$ $1/read.php?tid=$2
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2
phpwind nginx下伪静态规则
location / {
rewrite ^(.*)-htm-(.*)$ $1.php?$2 last;
rewrite ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2 last;
}
function urlRewrite($url) {
global $db_htmifopen, $db_dir, $db_ext;
if (!$db_htmifopen) return $url;
$tmppos = strpos($url, '#');
$add = $tmppos !== false ? substr($url, $tmppos) : '';
$turl = str_replace(array('.php?', '=', '&', '&', $add), array($db_dir, '-', '-', '-', ''), $url);
$turl != $url && $turl .= $db_ext;
return $turl . $add;
}
替换成
function urlRewrite($url) {
global $db_htmifopen, $db_dir, $db_ext;
if(strpos($url, 'thread.php?') !== false){
unset($URL_type);
$Thread_array = explode('&', substr(str_replace($add, '', $url), 11));
foreach($Thread_array as $key => $value){
$URL_array = explode('=', $value, 2);
if($URL_array['1']){
switch($URL_array['0']){
case 'fid':
$URL_type['fid'] = $URL_array['1'];
$URL_type['type'] < 1 && $URL_type['type'] = 1;
break;
case 'page':
$URL_type['page'] = $URL_array['1'];
$URL_type['type'] < 2 && $URL_type['type'] = 2;
break;
default:
$URL_type['type'] = 4;
break;
}}}
switch($URL_type['type']){
case '1':
$url = "commtopics-" . $URL_type['fid'] ; break;
case '2':
$url = "commtopics-" . $URL_type['fid'] . "-" . $URL_type['page'] ; break;
}}elseif(strpos($url, 'read.php?') !== false){
unset($URL_type);
$tmppos = strpos($url, '#');
$add = $tmppos !== false ? substr($url, $tmppos) : '';
$Read_array = explode('&', substr(str_replace($add, '', $url), 9));
foreach($Read_array as $key => $value){
$URL_array = explode('=', $value, 2);
if($URL_array['1']){
switch($URL_array['0']){
case 'tid':
$URL_type['tid'] = $URL_array['1'];
$URL_type['type'] < 1 && $URL_type['type'] = 1;
break;
case 'page':
$URL_type['page'] = $URL_array['1'];
$URL_type['type'] < 2 && $URL_type[type] = 2;
break;
case 'fpage':
$URL_type['fpage'] = $URL_array['1'];
$URL_type['type'] < 3 && $URL_type['type'] = 3;
break;
default:
$URL_type['type'] = 4;
break;
}}}
switch($URL_type['type']){
case '1':
$url = "article-".$URL_type['tid'].".html" ;
break;
case '2':
$url = "article-".$URL_type['tid'] . "-" . $URL_type['page'].".html" ;
break;
case '3':
$url = "article-". $URL_type['tid'] . "-" . $URL_type['page'] . "-" . $URL_type['fpage'].".html" ;
break;
}
}
// $url .= $db_ext; 很多人以为后缀问题,故作特处理。
return $url . $add;
}
规则如下. 添加到httpd.ini或者.htaccess 或者其他
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^thread-htm-tid-(\d+)-(.*).html thread.php?fid=$1
RewriteRule ^read-htm-tid-(\d+)-(.*).html read.php?tid=$1
RewriteRule ^commtopics-(\d+)-(.*) thread.php?fid=$1&page=$2
RewriteRule ^commtopics-(.*) thread.php?fid=$1&page=$2
RewriteRule ^article-(\d+)-(\d+)-(.*).html read.php?tid=$1&page=$2&fpage=$3
RewriteRule ^article-(\d+)-(\d+).html read.php?tid=$1&page=$2
RewriteRule ^article-(.*).html read.php?tid=$1
RewriteRule ^(.*)-htm-(.*).html $1.php?$2
RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2
</IfModule>
PHPwind高级伪静态规则及方法的更多相关文章
- phpwind伪静态规则(IIS,Nginx,Apache)的介绍及代码
phpwind iis下伪静态规则[ISAPI_Rewrite]RewriteRule ^(.*)/(.*)-htm-(.*)-(.*).html$ $1/$2.php?$3=$4RewriteRul ...
- Nginx伪静态配置和常用Rewrite伪静态规则集锦
伪静态是一种可以把文件后缀改成任何可能的一种方法,如果我想把php文件伪静态成html文件,这种相当简单的,下面我来介绍nginx 伪静态配置方法 nginx里使用伪静态是直接在nginx.conf ...
- [转]Nginx伪静态配置和常用Rewrite伪静态规则集锦
Nginx伪静态配置和常用Rewrite伪静态规则集锦 作者: 字体:[增加 减小] 类型:转载 时间:2014-06-10 我要评论 伪静态是一种可以把文件后缀改成任何可能的一种方法,如果我想把ph ...
- Nginx常用伪静态规则(rewrite)-Discuz X3.2-WordPress-PHPCMS-ECSHOP-SHOPE(转)
当我们从apache服务器转向Nginx服务器的时候,它们的伪静态规则就不一样了,所以你熟悉Nginx服务器的伪静态规则,自己写当然也好.不了解Nginx服务器的伪静态规则的,为方便各位站长,收集了这 ...
- 伪静态规则写法RewriteRule-htaccess详细语法使用
一.正则表达式教程伪静态规则写法RewriteRule-htaccess详细语法使用教程分享简单说下:伪静态实际上是利用PHP把当前地址解析成另外一种方法进行访问网站!要学伪静态规则的写法,你必须得懂 ...
- WIN8 、WIN7 下IIS7.5、IIS8 的rewrite 伪静态功能设置方法
原文 WIN8 .WIN7 下IIS7.5.IIS8 的rewrite 伪静态功能设置方法 win7和win8系统都自带有iis的功能.关于IIS的安装,上一篇已经讲述,这里就不重复了. 下面说下在w ...
- 转--htaccess语法教程 apache服务器伪静态规则教程
转自:http://blog.csdn.net/qingli518/article/details/9118361 htaccess语法教程apache服务器伪静态规则教程 注:如果你是为了找Disc ...
- 7.nginx伪静态规则
网上收集的一些常用的,要用的时候就仿照一下,或直接拿来用. WordPress伪静态规则 location / { index index.html index.php; if (-f $reques ...
- 伪静态规则RewriteRule-htaccess
伪静态实际上是利用php把当前地址解析成另一种方法来访问网站,要学伪静态规则的写法,要懂一点正则 一.正则表达式教程 有一个经典的教程:正则表达式30分钟入门教程 常用正则如下: . 换行符以外的所有 ...
随机推荐
- Spark Kill Application
yarn application -kill <applicationId>
- spring注解实现AOP
项目结构图
- vbox下Oracle Enterprise liunx5.4虚拟机安装10G RAC实验(一)
1.配置第一个虚拟机 1.1 安装后的登录界面 1.2 第1台机器(单数据配置方面) 1.2.1 验证安装包 1.2.2 修改内核参数 1.2.3添加安全限制 1.2.4关闭防火墙 1.2.5添加用户 ...
- echarts一个页面动态加载两张不同图表数据
参考 http://www.stepday.com/topic/?877 http://blog.csdn.net/for_china2012/article/details/45167161 // ...
- NBUT比赛 方格规律递推题
题目链接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=26901#problem/A 题意:有一个 2*n的格子里,你可以选择任意一个格 ...
- Vim 常见操作
1.复制所有内容 按照此顺序敲即可:gg(光标定位到文件头) V(选中该行) G(选中该行开始到最后一行结尾) y(复制选中内容) 2.粘贴所有内容 正常模式下,敲p即可,如果遇到粘贴内容不全,需要 ...
- purge mysql自带命令清除binlog
#!/bin/bash DATAUSER=root DATAPASS=shiyiwen DAY=$1 if [ ! $# == 1 ];then echo -e "\033[32m USAG ...
- 深入了解ios系统机制
1.什么叫ios? ios一般指ios(Apple公司的移动操作系统) . 苹果iOS是由苹果公司开发的移动操作系统.苹果公司最早于2007年1月9日的Macworld大会 ...
- jquery_DOM操作
DOM操作:DOM Core(核心),HTML_DOM,CSS_DOM CSS_DOM操作: css()获取或添加样式 opacity()透明设置 height()高度值 width()宽度 offs ...
- SpringBoot配置Email发送功能
相信使用过Spring的众多开发者都知道Spring提供了非常好用的 JavaMailSender接口实现邮件发送.在Spring Boot的Starter模块中也为此提供了自动化配置.下面通过实例看 ...