簡體   English   中英

通過www.example.com/page而不是www.example.com/page.php訪問URL

[英]Accessing URLS by www.example.com/page instead of www.example.com/page.php

是什么處理了擴展的禁用? 是APACHE還是PHP安裝? 如何配置不需要.php擴展名的Web服務器? 是否有可以同時將www.example.com/page.php和www.example.com/page用作URL的選項?

阿帕奇也有一個叫做設置MultiViews ,將有助於domain.com/index.*domain.com/indexdomain.com/example.*domain.com/example等。

我偶爾會遇到MultiViews擊敗mod_rewrite規則的問題,因此我傾向於將其關閉。

查看有關此主題的清單之外的一些文章:您使用Apache(以您的情況為例)設置ReWriteRule,然后讓PHP解析URL以獲取正確的信息。 (同樣,針對您的情況。您可以使用多種語言和http服務器執行此操作)

http://www.alistapart.com/articles/succeed/

http://www.alistapart.com/articles/urls/

brianreavis是正確的。 這是您的.htaccess文件的示例:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php

我只是將其全部扔給PHP並對其進行解析,但是我想在其中進行:

.htaccess

RewriteEngine On
RewriteRule !\.(js|ico|gif|jpg|png|css)$ @frontend.php

我在.htaccess中使用它

<Files ~ "^[^.]+$">
ForceType application/x-httpd-php5
</Files>

這樣,我可以從文件中刪除所有擴展名(.php),它仍然可以工作。

我使用$ _SERVER ['PATH_INFO']檢索路徑的其余部分作為參數。 例如/ page / param1 / param2,其中page是實際的php文件。

暫無
暫無

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

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