2017-03-03 36 views
2

我有在Azure上一個WordPress(PHP)網站的域名的根託管(即http://example.com/ASP.Net內的WordPress在Azure上

我想舉辦在這種設置中一個完全獨立的ASP.net應用子目錄網址即http://example.com/aspapp

我已經創造了在Azure門戶額外的虛擬目錄,並通過Visual Studio中發佈的ASP.net應用到該目錄。

我打開了根URL(http://example.com)和WordPress仍工作正常。

我打開了ASP.net url(http://example.com/aspapp),我得到了正在運行的asp.net應用程序,但它只服務於aspx頁面而沒有其他內容(所以它沒有拾取圖像,js文件或css)。

此外,如果我點擊ASP.net應用程序中的一個鏈接,該鏈接應該帶我到ASP.net應用程序的子頁面(例如http://example.com/aspapp/about),我會收到由Wordpress提供的404錯誤。

好像WordPress是服務,除了一個aspx頁面一切都在一個子目錄

有誰知道我是如何得到這個工作。

非常感謝

回答

0

在您的Azure的Web應用程序,您需要選中該複選框去應用程序設置和配置虛擬目錄爲您的應用程序,並把它標記爲虛擬應用程序。這將允許您在Azure App Service中的父/主網站的子文件夾中運行ASP.NET網站。

+0

這就是正是香港專業教育學院做了什麼,但WordPress的仍然是我所有的文件我的asp.net目錄的子目錄。該asp.net目錄的主頁缺乏你期望的樣式 - 我猜是因爲css和js在子目錄中,並且這些被wordpress劫持。看看: wordpress - http://earselectric.azurewebsites.net/ :asp.net首頁 - http://earselectric.azurewebsites.net/data 導航在asp.net關於頁面 - http:// earselectric。 azurewebsites.net/data/Home/About <= wordpress ?? –

2

香港專業教育學院終於設法解決它

我到該應用的蔚藍捻控制檯,並編輯了根web.config文件,並添加一條規則,以確保WordPress的完全忽視了子目錄

<rule name="dataapp" stopProcessing="true"> 
      <match url="^aspapp/*"/> 
      <action type="None" /> 
     </rule> 
     <rule name="WordPress: http://earselectric.azurewebsites.net" patternSyntax="Wildcard"> 
      <match url="*"/> 
       <conditions> 
        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true"/> 
        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true"/> 
       </conditions> 
      <action type="Rewrite" url="index.php"/> 
     </rule> 

的第一條規則就是我加入,並確信該aspapp虛擬目錄的所有請求被忽略 - 允許ASP.net應用程序來處理所有的請求 - 完美