我試圖從具有nginx的自身的VPS是一個Azure的Web應用程序遷移PHP的Web應用程序。在NGINX配置中,還有一些需要遷移的重寫規則。現在,該應用程序正在運行,除了重寫之外。
我做
什麼。所以,給我創建了一個名爲applicationHost.xdt
文件,並將其添加到/site
文件夾中的重寫。我測試了新的.xdt
正在通過添加一個超時規則來讀取,後來我發現它已被插入主配置文件/local/Config/applicationhost.config
。然而,我的規則不存在,它根本不工作。
我也試過在名爲web.config
的/wwwroot
文件夾下添加下面的文件。
applicationHost.xdt:
<?xml version="1.0"?>
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<system.applicationHost>
<webLimits xdt:Transform="SetAttributes(connectionTimeout)"
connectionTimeout="00:00:30" />
</system.applicationHost>
<location path="{main_location_for_web_app}" xdt:Transform="InsertIfMissing" >
<system.webServer xdt:Transform="InsertIfMissing">
<rewrite xdt:Transform="InsertIfMissing">
<rules xdt:Transform="InsertIfMissing" lockElements="clear">
<rule name="amr" enabled="true" stopProcessing="true" lockItem="true">
<match url="{my app url}/introduction.php" />
<action type="Redirect" url="{my app url}/reset.php" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
</system.webServer>
</location>
</configuration>
我是相當新的這一切,但它是我需要做的任務。我很感激,如果有人能告訴我我做錯了什麼或調試這個最好的方法。
謝謝你。我仍然試圖讓它工作。我使用了你提供的示例,而不是'introduction.php',我使用'。*'不適合我。調試它的最佳方法是什麼?我怎麼能100%確定'web.config'文件正在被讀取。再次感謝。 –
發現我的錯誤。我的代碼在'/ wwwroot/html'而不是'/ wwwroot'中,因此'web.config'文件需要位於'/ wwwroot/html /'中,因爲它是Web應用程序的新根。 –