由於我以前的伺服器是 Linux 驅動的機器,所以我有這段程式碼:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?path=$1 [NS,L]
</IfModule>
這段程式碼會將資訊放入 URL 中,如下所示:
http://www.example.com/nr1/nr2/nr3/
放入這樣的數組中:
array ( 0 => "nr1", 1 => "nr2", 2 => "nr3")
我的新伺服器電腦是基於 Windows 2008 (IIS) 的伺服器。現在我想在我的新伺服器上使用 mod_rewrite mod。簡而言之,我的問題是:
誰能告訴我,或將我連結到一個教程,告訴我如何安裝/使用 mod_rewrite mod(或任何執行相同操作的 mod)並將上面的程式碼轉換為我可以在基於 Windows 的伺服器上使用的格式。
我仍然使用 php,而不是 ASP.NET,我知道很多人會說使用apache什麼的,但不幸的是需要使用IIS。
提前謝謝了!
答案1
我非常喜歡 IIS 重寫模組,因為它完全整合到檔案中web.config
(相當於 IIS .htaccess
)。
但如果你想要精確的語法匹配,ISAPI Rewrite 是你的朋友。它(據我所知)與文件mod_rewrite
中的 Apache 模組100% 相容.htaccess
(並且實際上使用的.htaccess
文件看起來像真的在 Windows 資源管理器中看到沒有檔案名稱的有效檔案很奇怪)
答案2
Microsoft 的官方 IIS 網站有重寫模組您正在尋找。
如果您熟悉 mod_rewrite,那麼 IIS 的等效項非常相似。否則,網路上有很多指南。這個模組的最初目的是鏡像 mod_rewrite,因此儘管它們的發展方向略有不同,但它非常相似。