Joomla在IIS7通过Web.config配置实现URL Rewrite

Joomla生成的各个页面默认使用带查询参数的URL。在Apache中可以通过.htaccess文件配置URL重写,在IIS6中需要ISAPI_Rewrite或者Ionics ISAPI Rewrite Filter之类的插件实现URL重写,而在IIS7中可以通过安装Microsoft URL Rewrite Module for IIS 7实现。以下是IIS7中Joomla通过URL Rewrite实现搜索引擎友好地址的方法。
1、下载并安装Microsoft URL Rewrite Module for IIS 7(好多虚拟主机提供商默认已经安装了,比如GoDaddy.com)。
2、在Joomla安装目录中创建文件名为Web.config的文件。
3、在Web.config文件中粘贴以下内容并保存:

<?xml version=”1.0″ encoding=”UTF-8″?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name=”Security Rule” stopProcessing=”true”>
          <match url=”^(.*)$” ignoreCase=”false” />
          <conditions logicalGrouping=”MatchAny”>
            <add input=”{QUERY_STRING}” pattern=”mosConfig_[a-zA-Z_]{1,21}(=|\%3D)” ignoreCase=”false” />
            <add input=”{QUERY_STRING}” pattern=”base64_encode.*\(.*\)” ignoreCase=”false” />
            <add input=”{QUERY_STRING}” pattern=”(\&lt;|%3C).*script.*(\>|%3E)” />
            <add input=”{QUERY_STRING}” pattern=”GLOBALS(=|\[|\%[0-9A-Z]{0,2})” ignoreCase=”false” />
            <add input=”{QUERY_STRING}” pattern=”_REQUEST(=|\[|\%[0-9A-Z]{0,2})” ignoreCase=”false” />
          </conditions>
          <action type=”CustomResponse” url=”index.php” statusCode=”403″ statusReason=”Forbidden” statusDescription=”Forbidden” />
        </rule>
        <rule name=”SEO Rule”>
          <match url=”(.*)” ignoreCase=”false” />
          <conditions logicalGrouping=”MatchAll”>
            <add input=”{REQUEST_FILENAME}” matchType=”IsFile” negate=”true” pattern=”" ignoreCase=”false” />
            <add input=”{REQUEST_FILENAME}” matchType=”IsDirectory” negate=”true” pattern=”" ignoreCase=”false” />
            <add input=”{URL}” negate=”true” pattern=”^/index.php” ignoreCase=”false” />
            <add input=”{URL}” pattern=”(/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$” />
          </conditions>
          <action type=”Rewrite” url=”index.php” />
        </rule>
      </rules>
    </rewrite>
 </system.webServer>
</configuration>

4、在中修改以下配置:

Discuz在IIS7中通过Web.config实现URL Rewrite

把以下代码复制到网站目录中的配置文件web.config中的 <system.webServer>之后就可以了。

        <rewrite>
            <rules>
                <rule name=”Imported Rule 1″>
                    <match url=”^archiver/((fid|tid)-[\w\-]+\.html)$” ignoreCase=”false” />
                    <action type=”Rewrite” url=”archiver/index.php?{R:1}” appendQueryString=”false” />
                </rule>
                <rule name=”Imported Rule 2″>
                    <match url=”^forum-([0-9]+)-([0-9]+)\.html$” ignoreCase=”false” />
                    <action type=”Rewrite” url=”forumdisplay.php?fid={R:1}&page={R:2}” appendQueryString=”false” />
                </rule>
                <rule name=”Imported Rule 3″>
                    <match url=”^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$” ignoreCase=”false” />
                    <action type=”Rewrite” url=”viewthread.php?tid={R:1}&extra=page\%3D{R:3}&page={R:2}” appendQueryString=”false” />
                </rule>
                <rule name=”Imported Rule 4″>
                    <match url=”^space-(username|uid)-(.+)\.html$” ignoreCase=”false” />
                    <action type=”Rewrite” url=”space.php?{R:1}={R:2}” appendQueryString=”false” />
                </rule>
                <rule name=”Imported Rule 5″>
                    <match url=”^tag-(.+)\.html$” ignoreCase=”false” />
                    <action type=”Rewrite” url=”tag.php?name={R:1}” appendQueryString=”false” />
                </rule>
            </rules>
        </rewrite>

多款Wordpress代码高亮插件

如果你的博客中经常要显示一些代码片段,应当考虑使用代码高亮插件了,这样撰写文章的时候会轻松很多,而且显示效果也会比较好。这里介绍几款Wordpress代码高亮插件。

Google Syntax Highlighter for WordPress

 基于Syntax Highlighter这个Javascript代码高亮库开发的。非常强,支持以纯文本方式浏览代码、快速复制和打印。首推这款

Highlight Source Pro

 是一款服务器端的代码高亮插件,没有Javascript。强大、灵活且与XHTML兼容。

iG Syntax Hiliter
 
 非常强大的代码语法高亮插件,支持多种代码语言,包括as, asp, c, cpp, csharp, css, delphi, html, java, js, mysql, perl, php, python, ruby, smarty, sql, vb, vbnet, xml, code。同时包含详细的后台设置项,比如以Plain Text方式看代码, 显示代码语言名称,是否高亮留言列表中的代码,是否显示行数等。

 它使用的是[tag]代码部份[/tag] 这样的方法渲染代码,比如 [php]代码片段[/php],考虑日后可能发生的更改和兼容问题的话,似乎不太适合。

WordPress Code Highlight

这是比较早的一款WordPress 代码高亮插件了。使用简单,功能也相对贫乏一些。适合要求不多的用户。

WP-CODEBOX

WP-CODEBOX 代码高亮插件是国人开发的,支持多种语言、代码下载、复制到剪贴板、代码框收放及后台默认属性设置。使用标准的<code></code>标签。

WP-Syntax

WP-Syntax 以<pre lang=”php”>代码内容 </pre>这种形式来实现代码高亮,即保留了标准的HTML标签,又实现了美化效果。可以说是兼容性最好。

另外GeShi是个PHP的开源代码高亮库,可以用来开发自己的代码高亮插件