2010-12-01 79 views
3

我在運行IIS的虛擬Windows服務器上託管一個php應用程序。將.htaccess翻譯爲web.config

誰寫的PHP的網站,我的那個人叫我把這塊代碼中的.htaccess:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

但由於此應用程序運行在IIS上,我需要這塊代碼的翻譯到web.config。我如何將它們翻譯成web.config?

回答

3

這個htaccess代碼所做的是將任何會導致404錯誤(!-f和!-d表示「文件不存在」和「dir不存在」)的請求重定向到/index.php。

IIS7有一個功能導入mod_rewrite的規則 - 只要使用此:

  1. 啓動IIS管理器。
  2. 在左側的連接窗格中,選擇默認網站。
  3. 在右側的功能視圖中,單擊URL重寫。
  4. 在右側的操作窗格中,單擊導入規則。
  5. 複製你的mod_rewrite規則並將它們粘貼到重寫規則文本框中。
  6. 「轉換規則」框中的「樹狀視圖」選項卡會立即顯示轉換結果。您也可以單擊「XML視圖」選項卡查看規則如何存儲在Web.config文件中。

Source

+0

非常感謝。我會去嘗試一下。如果URL編寫器沒有安裝在你的IIS上,它在這裏:http://learn.iis.net/page.aspx/460/using-the-url-rewrite-module/ – olidev 2010-12-02 11:01:15