簡體   English   中英

web.config和Aruba-URL重寫

[英]web.config & Aruba - URL Rewrite

我正在開發我的第一個網站,並且剛剛了解了IIS的web.config文件,所以我想做的是隱藏URL的不同部分。

例如,主頁是www.domain.com/it/homepage.html,我很想使其顯示為www.domain.com/it/homepage,但我沒有找到有關刪除網絡上.html擴展名的任何信息,只是很多我試圖用.html替換的.aspx,失敗了。

另一個問題:是否可以使用web.config重定向錯誤? 我已經看到了很多基於.htaccess的解決方案,僅此而已。

編輯:忘記說該網站由ARUBA托管,在其Windows導向服務器上

您正在嘗試更改網站的URL,這是訪問它的方式...這是一件很奇怪的事情。 當您向服務器請求某個頁面時,URL被解析為該文件的路徑。 如果要更改URL,則需要更改文件名-如果您不希望以.html結尾,則該文件不應該是html文件-但是,您的目標是不同。 您根本不想擴展。

幸運的是,有一種方法可以擁有一個沒有任何文件擴展名的url端點。 那將是一個文件夾。 文件夾沒有擴展名,但是文件夾本身不包含任何內容,除了要鏈接的文件。

旁注:還有另一種方法,這是您通常在網絡上看到的方法。 PHP可能在URL中除了終結點外還有其他內容,但是您詢問了基於Windows的HTML / ASPX Windows支持頁面。

所以-是的,我認為完全沒有擴展名的唯一方法是讓用戶瀏覽文件夾。 剩下的唯一問題是,您為什么仍要這樣做?

您可以在web.config文件中使用以下配置:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="niceURL"  stopProcessing="true">
                    <match url="^(.*)$" ignoreCase="false" />
                    <conditions>
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="{R:0}.html" appendQueryString="true" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM