C#配置偽靜態的方法
2017/6/27 16:41:49 獨占網絡 獨占觀點
什么是偽靜態
偽靜態是相對真實靜態來講的,通常我們為了增強搜索引擎的友好面,都將文章內容生成靜態頁面,但是有的朋友為了實時的顯示一些信息。或者還想運用動態腳本解決一些問題。不能用靜態的方式來展示網站內容。但是這就損失了對搜索引擎的友好面。怎么樣在兩者之間找個中間方法呢,這就產生了偽靜態技術。就是展示出來的是以 html 一類的靜態頁面形式
需要文件
Intelligencia.UrlRewriter.dll 根據網站不同下載 32 位與 64 位,直接將.dll 引入到網站里面加入在 bin 文件里面
配置方法
打開 web.config 文件,加入下面方法步在<configuration>節點里面加入
<configSections>
<section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSe ctionHandler, Intelligencia.UrlRewriter" />
</configSections>
第二步在<system.web>節點里面加入 <httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" />
</httpModules>
第三步,直接在<configuration>節點里面加入規則
<rewriter>
<rewrite url="^~/index.html" to="~/index.aspx"></rewrite> <rewrite url="^~/News/index(\d+).html
to="~/news.aspx?typeid=$1"></rewrite>
<rewrite url="^~/(\d+)/News/index(\d+).html" to="~/news.aspx?pagesize=$1&typeid=$2"></rewrite>
</rewriter>
結尾:
規則里面:url 代表要生成的靜態網頁,to 指向源來的動態網頁~/代表根目錄下面的,地址(\d+)代表替換參數的,正則表達式整數 typeid 為一個整數
$1,$2 代碼參數 1 與參數 2,對應 url 里面的()括號個,第二個,從左到右算起,如果有幾個括號就有幾個$標簽
下面就是一個完整的 web.config 代碼
<?xml version="1.0" encoding="UTF-8"?> <configuration>
<configSections>
<section name="rewriter" requirePermission="false" type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSe ctionHandler, Intelligencia.UrlRewriter" />
</configSections>
<system.web>
<httpModules>
<add name="UrlRewriter" type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" />
</httpModules>
</system.web>
<rewriter>
<rewrite url="^~/index.html" to="~/index.aspx"></rewrite> <rewrite url="^~/News/index(\d+).html"
to="~/news.aspx?typeid=$1"></rewrite>
<rewrite url="^~/(\d+)/News/index(\d+).html" to="~/news.aspx?page=$1&typeid=$2"></rewrite>
<rewrite url="^~/News/(\d+).html" to="~/newsinfo.aspx?typeid=$1"></rewrite>
</rewriter>
</configuration>