Categories


Tags


Windows IIS下论坛静态化分析

这两天研究Discuz 4.1,并成功地将原来一个Discuz 2.5的论坛升级到了最新版本,个人感觉这个论坛实在不错。

我的Discuz 4.1是在Apache+Php+Mysql下运行的,并开启了Url Rewrite,之后我发现整个论坛的大部分页面都可以使用html的静态地址方式来访问,感觉真不错,Apache实在太强大了,难怪现在用Apache的站点那么多。

IIS下能否也实现这种静态化功能呢,我知道Helicon开发了一个叫ISAPI_Rewrite的ISAPI程序,可以在IIS下实现Url Rewrite功能,不过我自己还没有尝试过,过两天按照下面的操作测试一下看看效果如何。另外,下文Discuz提供的ZIP文件里的Rewrite.dll实际上就是Helicon的ISAPI_Rewrite程序,我对Discuz做为软件开发商居然也盗版同行的软件感到遗憾。

参考文章:Discuz!4.1.0 IIS Rewrite配置方法(转自DISCUZ会员区)

Discuz! URL静态化功能受到论坛所在服务器环境的制约,在开启此功能之前,请根据你的Web服务器环境,选择相应的环境配置方法,以下提供的iis6下的服务器配置..其它服务器(如apache,zeus)你可以根据原理自行配置。

1、下载IIS Rewrite模块:http://download.discuz.net/4.1.0/discuz_iis_rewrite.zip;

2、将压缩包解压到任意目录,(如:C:\Rewrite)。然后打开“控制面板”-“管理工具”-“IIS信息服务管理器”-“网站”-“您的站点”-“属性”。在“ISAPI筛选器”项点击“添加”,筛选器名称填入Rewrite,可执行文件为C:\Rewrite\Rewrite.dll;

3、重新启动IIS就可以生效了。

通过上述配置后,您就可以在Discuz!4.1.0后台中根据需要开启影响的静态功能了。

无:不启用URL静态化功能。

Discuz!Archiver静态化:当论坛启用Archiver功能时,Archiver内的所有链接均采用*.html形式。

普通页面静态化:对论坛常用页面(如forumdisplay.php、viewthread.php、viewpro.php等)进行URL静态化转换。

Archiver和普通页面均静态化:对Archiver以及论坛常用页面(如forumdisplay.php、viewthread.php、viewpro.php等)进行URL静态化转换。

使用注意事项:

您可以通过系统设置中Discuz!选项来控制URL静态化的打开或关闭及其工作状态,本功能对服务器环境有特殊要求,独立主机用户需要对Web服务器增加相应的Rewrite规则,因此需要服务器权限才可使用;对于虚拟主机用户,您需要向您的空间服务商进行咨询:空间是否支持Rewrite以及是否支持对站点目录中.htaccess的文件解析,只有满足这两条件,URL静态化功能才会生效。打开URL静态化后,论坛一些常用链接会变成类似discuz/forum-1-1.html形式,如果您的服务器环境不支持或者尚未配置好,访问这些链接会出现“网页无法显示”的错误信息,论坛将无法正常访问。发生无法访问的现象时,请您进入管理后台,关闭URL静态化功能,论坛即可恢复正常状态。

本文提供的压缩包中还有一个httpd.ini文件,该文件是rewrite规则的配置文件。内容如下(无需修改):

[ISAPI_Rewrite]

# 3600 = 1 hour

CacheClockRate 3600

RepeatLimit 32

# Protect httpd.ini and httpd.parse.errors files

# from accessing through HTTP

RewriteRule ^(.*)/archiver/([a-z0-9\-]+\.html)$ $1/archiver/index\.php\?$2

RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html$ $1/forumdisplay\.php\?fid=$2&page=$3

RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$$1/viewthread\.php\?tid=$2&extra=page\%3D$4&page=$3

RewriteRule ^(.*)/profile-(username|uid)-(.+)\.html$ $1/viewpro\.php\?$2=$3

来源:月光博客


Public @ 2014-12-25 16:11:10

网站伪静态和静态的区别,网站为什么要做静态URL?

网站伪静态和静态的区别在于生成页面的方式。 1. 网站伪静态:伪静态是在不改变服务器动态处理程序的基础上,通过对URL进行重写,使其看起来像是静态页面,而实际上仍由服务器动态生成。服务器会根据伪静态规则将动态URL转化为静态URL,并返回相应的内容。 2. 静态页面:静态页面是指直接由服务器返回的不需要动态生成的HTML、CSS和JavaScript等文件。静态页面对于服务器来说处理速度快,且

Public @ 2023-06-29 15:00:20

二级域名还是一级目录?

读者smart问:都说子站包围主站会很有利,想问一下关于子站的问题子站(二级域名)相对于网站的一级目录来说,权威性是不是要大些?搜索引擎是把子站作为独立的一个站来看待?还是也算为一级目录来看待?如果是作为独立的一个站来看待,那主站的内容就少了,那流量会算进主站吗?这是一个很好的问题,要做好搜索引擎优化,就是要在这种细节的地方多下功夫。搜索引擎会把二级域名当作一个独立的站点来看待,也就是说http:

Public @ 2019-10-04 16:11:37

URL中带文字对搜索引擎的利与弊,是有利还有弊?

有利: 1. 带有文字的URL能够为搜索引擎提供搜索查询所需要的相关性参数,从而增强搜索引擎的准确度。 2. 带有文字的URL为用户带来了一种方便,它能够提高搜索的准确性,使得用户能够更快地找到想要的信息。 弊: 1. 如果网站使用了过于长的URL,这可能会降低搜索引擎的搜索结果排名。 2. 带有文字的URL也会增加搜索引擎抓取网页所需要的时间,从而影响网页更新的快慢。

Public @ 2023-02-28 22:00:21

如何替换请求URL中的文字?

要替换请求URL中的文字,您可以使用以下方法: 1. 使用字符串的replace()方法:如果您只需要替换URL中的特定字符串,您可以使用replace()方法来完成。例如,假设您要将URL中的"oldtext"替换为"newtext",您可以这样做:var newURL = oldURL.replace("oldtext", "newtext"); 2. 使用正则表达式:如果您需要更复杂的替

Public @ 2023-07-27 00:50:17

更多您感兴趣的搜索

0.511921s