為什麼我無法使用 .htaccess 隱藏 .php 檔案副檔名?

Mary-Kate Olsen
發布: 2024-11-06 18:08:02
原創
292 人瀏覽過

Why Can't I Hide My .php File Extension with .htaccess?

使用.htaccess 隱藏.php 檔案副檔名:故障排除提示

儘管按照以下說明使用.htaccess 隱藏.php 檔案副檔名,您遇到困難。讓我們調查該問題並提供修改後的解決方案。

您的初始 .htaccess 程式碼嘗試重寫特定「資料夾」目錄中的 URL。但是,它看起來不完整,因為它缺少相應的 RewriteCond 指令。為了解決這個問題,以下修改後的程式碼應該可以工作:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteCond %{REQUEST_FILENAME} !-f
   RewriteRule ^folder/([a-zA-Z_\-0-9]+)/?$ /folder/.php
</IfModule>
登入後複製

RewriteCond 行確保僅當請求的檔案不存在(即,它不是靜態檔案)時才應用規則。

此外,為了正確處理各種情況,請考慮使用更全面的.htaccess 程式碼,如已接受的答案中建議的程式碼:

RewriteEngine On

# Unless directory, remove trailing slash
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)/$ http://example.com/folder/ [R=301,L]

# Redirect external .php requests to extensionless URL
RewriteCond %{THE_REQUEST} ^(.+)\.php([#?][^\ ]*)?\ HTTP/
RewriteRule ^(.+)\.php$ http://example.com/folder/ [R=301,L]

# Resolve .php file for extensionless PHP URLs
RewriteRule ^([^/.]+)$ .php [L]
登入後複製

此程式碼不僅隱藏了. php 副檔名,也隱藏了.php 副檔名。處理尾部斜線、外部 .php 請求,並在內部解析無副檔名 URL 的 .php 檔案。

請記住,驗證 .htaccess 檔案是否放置在專案的根目錄中,並檢查檔案的權限以確保其可讀網頁伺服器。

以上是為什麼我無法使用 .htaccess 隱藏 .php 檔案副檔名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!