簡體   English   中英

將mod_rewrite從文件夾寫入子目錄文件

[英]mod_rewrite into subdirectory file from folder

這可能是重復的,因為即使在檢查了stackoverflow的類似問題列表后也找不到原始文件。 實際上,如果用戶鍵入myipaddress / gt,那么它應該重定向到myipaddress / gt / gt.htm。我嘗試了各種mod_rewrites,但仍然在瀏覽器中列出了“ gt”文件夾內容。 我用下面的mod_rewrite進行了最后一次嘗試。

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteRule ^gt$ gt/gt.htm [NC,L]

但是瀏覽器仍然顯示“ gt”文件夾的內容。 我究竟做錯了什么?

您可以在/gt/.htaccess使用此規則:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /gt/

RewriteRule ^/?$ gt.php [L]

由於Apache將gt視為目錄,因此將其視為目錄。 但是,這並不能阻止對該特定路徑的所有重寫。

這是基本過程:

  1. 您導航到/gt
  2. Apache將其視為現有目錄,因此重定向到/gt/
  3. 您的規則將被忽略,因為它不包含斜杠。

這就是為什么您仍然看到目錄列表的原因。

因此,您應該將規則更改為此:

RewriteRule ^gt/$ gt/gt.php [NC,L]

或者,您可以DirectorySlash off並使結尾的斜杠為可選,如下所示:

Options +FollowSymlinks
DirectorySlash off

RewriteEngine On
RewriteBase /
RewriteRule ^gt/?$ gt/gt.php [NC,L]

通過執行上述任一操作,您可以在單個.htaccess文件中具有多個性質相似的規則。

暫無
暫無

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

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