很多站长可能跟我一样自己有服务器,又有不止一个站点需要设置伪静态。这样的需求对空间商来说可能很简单就实现了,但对我们菜鸟站长来说就比较头痛的:因为不专业,网上找资料也很费事。我也是花了1天多时间网上到处搜集资料才搞定了设置方法,这里发出来共享,希望对大家有帮助。高手和使用虚拟主机的朋友请飘过:
一、搞清楚组件isapi rewrite full和isapi rewrite lite的功能区别
isapi rewrite lite是免费版,只能用于一个站点的设置。我在这个问题是费了不少时间去做无用功后才知道了,汗!
isapi rewrite full这个才是多站点使用的,需要99美金买注册码,费了好大劲才找到个可用又不要银子的全功能版
要实现上面的功能必须安装isapi rewrite full版本!
二、安装配置
使用方法:
1、首先要把iis中已经安装的组件去掉,方法为: IIS----isapi筛选器-----删除------重启iis
2、将下载文件解压安装,安装过程中你可以自己选择安装目录,一般选择默认路径C:\Program Files\Helicon\ISAPI_Rewrite就可以了; 注意如果原来安装过的自己备份一份作为安装不成功恢复时使用。
3、安装完成后打开C:\Program Files\Helicon\ISAPI_Rewrite目录中ISRWConfig.exe,输入SN中注册序列号。
4、设置ISAPI_Rewrite目录权限
Administrators 和 SYSTEM 全部权限
IIS_WPG 读取和运行/读取
5、找到httpd.ini文件,点击右键将文件只读属性去掉。特别要注意的是“检查网站目录下HTTPD文件的权限,如果没有权限,请添加everyone可
以访问”。我开始也不正常,就是添加everyone可以访问才正常的。
6、每个站点只需上传该站点的规则文件httpd.ini就ok了,无需再做其他设置
我对服务器方面也是菜鸟,以上方法不一定全对,只是我根据自己的服务器的配置实践,希望对需要者有用。
如有其它问题请百度“isapi rewrite full”,或许有更好的解决方法。
三、下载组件及注册码
http://ishare.iask.sina.com.cn/f/10402530.html
顺便跟大家分享个好的文件储存空间,就是新浪共享文件http://ishare.iask.sina.com.cn/
单个文件50m内永久免费存储,下载速度还可以。
======================================
安装说明:
1、先从官方下载 ISAPI_Rewrite 3.1.0.75或最新版均可,下载地址:
http://www.helicontech.com/download-isapi_rewrite3.htm
2、用官方版本安装好以后,用附件中的两个文件同名覆盖。
3、在安装目录下找到 httpd.conf 文件。输入以下内容:
RegistrationName= coldstar
RegistrationCode= 2EAD-35GH-66NN-ZYBA
重起IIS即可。
isapi_rewrite 3破解文件下载:
ISAPI_Rewrite3_0075_cra.zip |
有朋友可能在安装之后发现rewrite不起作用。在这里提示一下,原因可能有二:
1、规则写错了(这个有点废话,但确实最常见的)可以使用自带的规则检测器测试一下,如果还不行,请教其它人。
2、权限。.htaccess文件需要IIS进程用户的访问权,一般为iis_wpg或Network Serivce可读。对于站点设置了独立权限的朋友,这个错误的可能性比较大。
============================
DEDECMS问答模块rewrite伪静态设置教程:
搭配环境一:
服务器软件:apache
操作系统:windows XP
实现步骤:
1、在网站根目录下创建 .htaccess 文件,内容如下(相关正则可自己手动修改)
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)/question-id-([0-9]+)\.html$ $1/question\.php\?id=$2
RewriteRule ^(.*)/browser-tid-([0-9]+)\.html$ $1/browser\.php\?tid=$2
RewriteRule ^(.*)/browser-tid2-([0-9]+)\.html$ $1/browser\.php\?tid2=$2
RewriteRule ^(.*)/browser-lm-([0-9]+)\.html$ $1/browser\.php\?lm=$2
RewriteRule ^(.*)/browser-tid-([0-9]+)-lm-([0-9]+)\.html$ $1/browser\.php\?tid=$2&lm=$3
RewriteRule ^(.*)/browser-tid2-([0-9]+)-lm-([0-9]+)\.html$ $1/browser\.php\?tid2=$2&lm=$3
RewriteRule ^(.*)index\.html$ $1/index.php
RewriteRule ^(.*)list-([0-9]+)\.html$ $1/plus/list.php?tid=$2
RewriteRule ^(.*)list-([0-9]+)-([0-9]+)\.html$ $1/plus/list.php?typeid=$2&PageNo=$3
RewriteRule ^(.*)view-([0-9]+).html$ $1/plus/view.php?aid=$2
RewriteRule ^(.*)view-([0-9]+)-([0-9]+).html$ $1/plus/view.php?aid=$2&pageno=$3
2、修改 apache->conf 目录下的 httpd.conf 文件,修改点如下:
a、把 #LoadModule rewrite_module modules/mod_rewrite.so 前的 # 号去掉(必须),此步为开启rewrite功能
b、把 #AddModule mod_rewrite.c 前的 # 号去掉(可能没有这行,如果没有就不管它)
c、搜索 “AllowOverride None”(不包括引号,下同) ,有多个,全部替换为 “AllowOverride All”
d、找到 ,看看有没有Opti***** FollowSymLinks 这一行,如果没有,就加上,类似下面这样子
Opti***** FollowSymLinks
AllowOverride ALL
...........
3、dedecms后台【系统】-->【系统基本参数设置】-->【模块设置】-->“是否使用Rewrite”,选择“是”,保存
4、重启 apache 服务器,即可
搭配环境二:
服务器环境:IIS
操作系统:windows XP SP3
实现步骤:
1、下载并安装IIS Rewrite模块,可到 www.helicontech.com/download/isapi_rewrite/ISAPI_Rewrite3_0064_Lite.msi 这个地址下载
2、在IIS信息服务管理器里右击你的站点,选择“属性”,点击【ISAPI筛选器】选项卡-->“添加”,筛选器名称写Rewrite,可 执行文件为 “C:\Program Files\Helicon\ISAPI_Rewrite3\ISAPI_Rewrite.dll”(选择刚才安装IISRewrite目录下的 ISAPI_Rewrite.dll文件)
3、重启IIS服务器,看到【ISAPI筛选器】中刚才添加的筛选器名称所对应的状态为向上的图标时,表示添加成功
4、dedecms后台【系统】-->【系统基本参数设置】-->【模块设置】-->“是否使用Rewrite”,选择“是”,保存
5、打开isapirewrite(程序名为:ISAPI_Rewrite_Manage),保证config栏的地址为 C:\ProgramFiles \Helicon\ISAPI_Rewrite3\httpd.conf(IISRewrite安装目录下httpd.conf文件)的前提下,点击 “Edit”,在编辑器中添加以下内容(相关正则可自己手动修改)并保存应用:
# 3600 = 1 hour
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
RewriteRule ^(.*)/question-id-([0-9]+)\.html$ $1/question\.php\?id=$2
RewriteRule ^(.*)/browser-tid-([0-9]*)\.html$ $1/browser\.php\?tid=$2
RewriteRule ^(.*)/browser-tid2-([0-9]+)\.html$ $1/browser\.php\?tid=$2
RewriteRule ^(.*)/browser-tid-([0-9]+)-lm-([0-9]+)\.html$ $1/browser\.php\?tid2=$2&lm=$3
RewriteRule ^(.*)/browser-tid2-([0-9]+)-lm-([0-9]+)\.html$ $1/browser\.php\?tid2=$2&lm=$3
6、至此,IIS下DeDeCMS问答模块伪静态已实现,若访问还不行,重启IIS服务器