2014-11-04 110 views
0

我正在使用傳統asp頁面在現有Web服務器上創建Symfony應用程序。如果找到domain/com/*。asp,它將加載該頁面。如果一個URL被輸入並且沒有被找到,它將通過/app.php傳遞給PHP路由系統。我在IIS中設置了URL重寫來處理這個問題,一切都很好。不過,我需要爲default.asp和index.asp制定例外規定。我想讓IIS檢查默認文檔並加載它們,然後再決定URL是否爲404並將其重寫爲/app.php。我可以在PHP中編寫代碼來檢查文件並加載它,但感覺這應該由IIS處理。可能嗎?需要IIS在URL重寫之前打開默認文檔

如果我的解釋是不明確的,這裏有一個例子:

用戶嘗試加載https://www.website.com/thisIsAFoldername 如果https://www.website.com/thisIsAFoldername/default.asp存在,它應該加載該頁面。 否則,應該加載URL重寫https://www.website.com/app.php/thisIsAFoldername

回答

0

我知道你可以雙擊你創建的重寫規則,並添加一個條件「不是這條路徑」或類似的東西(我不記得名字)然後添加與您的路徑匹配的正則表達式。 我用它的資產也許它會在你的情況下工作

+0

謝謝你的迴應。我不確定那將如何工作。有數百個具有default.asp的文件夾,並且當用戶輸入時,default.asp不在URL中。 – rooter 2014-11-04 17:39:34

+0

的確,如果它不在URL中,它根本就沒有用處,但沒有得到。祝你好運,不能幫你更可惜。 – oligan 2014-11-05 12:12:07

0

我最終只是忽略IIS中的默認文檔設置,並編寫一些簡單的PHP來處理它。在我的應用程序異常處理程序中,我檢查文件default.asp是否存在於請求的路徑中。如果是這樣,重定向到它,否則,顯示一個404.