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分钟入门教程 常用正则如下: . 换行符以外的所有 ...
随机推荐
- JAVA生成二维码图片代码
首先需要导入 QRCode.jar 包 下载地址看这里 http://pan.baidu.com/s/1o6qRFqM import java.awt.Color;import java.awt. ...
- 【7集iCore3基础视频】7-2 iCore3原理图介绍
iCore3原理图介绍: 高清源视频:http://pan.baidu.com/s/1hsPkifM 密码:ei8ciCore3 购买链接:https://item.taobao.com/item.h ...
- HDU 1828 Picture(线段树扫描线求周长)
Picture Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Su ...
- JS弹出遮罩层
// create div var mask=document.createElement("div"); mask.id="mask"; mask.style ...
- 字节流与字符流的区别&&用字节流好还是用字符流好?
字节流: (A)FileOutputStream(File name) 创建一个文件输出流,向指定的 File 对象输出数据. (B)FileOutputStream(FileDescriptor) ...
- larave5.1l队列
官方文档http://laravel.com/docs/5.1/queues#dealing-with-failed-jobs 1.队列容器设置为数据库 config/queue.php 'defau ...
- 没有对“C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files”的写访问权限 的解决方案
问题情况: 在64位机器上运行Web服务,然后在配置好之后测试访问的时候出现如下提示:
- VMware安装Linux第一天
今天上午下载了VMware-workstation_full_12.1.1.6932,它的Key是5A02H-AU243-TZJ49-GTC7K-3C61N,这些都是网络上搜罗到的. VMWare安装 ...
- CentOS6修改主机名(hostname)及 修改/etc/hosts 文件,增加ip和hostname的映射关系(转)
CentOS修改主机名(hostname) 需要修改两处:一处是/etc/sysconfig/network,另一处是/etc/hosts,只修改任一处会导致系统启动异常.首先切换到root用户. ...
- MVC控制器常用方法返回类型
控制器的常用方法 using System; using System.Collections.Generic; using System.Linq; using System.Web; using ...