2015-11-13 48 views
0

我們有一個經典的asp網站(而不是asp.net),我們已經一點一點地將其轉移到MVC。目前MVC項目作爲一個應用程序在IIS中的經典asp中運行,並擁有自己的應用程序池。這種安排正在起作用。我如何在MVC項目中包含經典的asp頁面

我被告知要從MVC項目中運行其餘的經典asp頁面,使得MVC項目成爲IIS中的主要項目。

我一直在尋找一個可行的解決方案,但還沒有找到任何。 This question與我的非常相似,但沒有答案。

我可以在MVC項目中創建一個文件夾(classicasp),將我剩餘的活動經典asp頁面移動到這個文件夾,然後從這裏運行這些文件夾?該網址會像

HTTP:/www.somewebsite.com/classicasp/somepage.asp

這可能嗎?如果是的話,我將如何處理MVC路由指向經典的asp頁面?

或者我應該扭轉安排,並運行經典的asp網站作爲一個應用程序在IIS下的MVC?

如果您需要更多信息,請讓我知道。

回答

1

你可以把你的根文件夾中的經典ASP頁在你的MVC網站(或根文件夾內的子文件夾),那麼是的,網址http://www.somewebsite.com/classicasp/somepage.asp應該工作,如果該文件的位置是沿C:\path-to\root\classicasp\somepage.asp

至於路由去,不與MVC做到這一點,使用IIS重寫模塊

你可能會更好過使用模塊生成規則,而不是直接寫入他們到web.config中,但以下是web.config中的示例規則。它使您能夠找到mysite.com/article.asp?id=10文章的URL mysite.com/article/10

<system.webServer> 
     <rewrite> 
      <rules>     
       <rule name="RewriteUserFriendlyURL1" stopProcessing="true"> 
        <match url="^article/([^/]+)/?$" /> 
        <conditions> 
         <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" /> 
         <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" /> 
        </conditions> 
        <action type="Rewrite" url="article.asp?id={R:1}" /> 
       </rule> 
      </rules> 
     </rewrite> 
</system.webServer> 
+0

這是昨晚我是如何實現的試點張貼的問題後。因爲我不需要它,所以我沒有做任何路由。簡單的舊.asp路徑足以滿足我的需求。另外,我還沒有在我的飛行員中完成數據庫調用,但應該直截了當, –

+0

@learning ...:確保你已經在IIS中安裝了經典ASP庫,當然; o) – Paul

相關問題