關於朱泰銓-個人資料



[心情分享]在IIS環境中將Wordpress改採靜態化網址

最近某個客戶問到了這個問題

在IIS主機上如何把wp改成固定網址呢

在apache下面可以利用Rewrite來做

該客戶提供了一種ISAPI組件 但ISAPI組件必須要擁有主機權限才能安裝

因此該客戶希望我們能協助安裝.

站在主機商的立場而言,關於組件的部分是能不裝即不裝

畢竟該組件隱藏的安全性問題等等都不是能預估的

況且裝了該組件後是否會影響其他正常使用的客戶這也很難說

因此,我便向該客戶提出另外一種解決辦法

該解決辦法是由 Einar 所提出

原理是用404錯誤頁面來導向

首先,先在自己的目錄放入一個404.php檔案如下

<?php
$qs = $_SERVER['QUERY_STRING'];
$pos = strrpos($qs, ‘://’);
$pos = strpos($qs, ‘/’, $pos + 4);
$_SERVER['REQUEST_URI'] = substr($qs, $pos);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
include(‘index.php’);
?>

接著再登入Plesk控制台(或者是透過IIS設定)

將 自設錯誤頁面 改為 URL 輸入 /404.php

然後再到wordpress後台

將固定網址 改成

/%year%/%monthnum%/%day%/%postname%/

這樣的格式
但這種格式有個缺點 就是萬一您的標題是有『非英文』的字
那就無法正常使用
解決方式則改用以下
/%year%/%monthnum%/%day%/%post_id%.html
(有html後綴)
或者
/%year%/%monthnum%/%day%/%post_id%
(沒有html後綴)

如此即可使用固定網址(改採模擬靜態化)

以上方法我測試過後是成功的
但因為我的部落格文章在google都已經被收錄了
改了網址以後seo就毀了(我知道有301導向外掛,但實際用過不合用)
因此我還是改採原本的固定網址

將方法記錄於此
分享給大家

1 comment to [心情分享]在IIS環境中將Wordpress改採靜態化網址

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>