1

我有文件夾/ aaa /。當用戶訪問URL/aaa時,我的服務器應返回文件/aaa/aaa.html的內容。所以我在/.htaccess中使用以下代碼來完成工作。有用。如何重寫指向文件不存在的文件夾的URL?

DirectorySlash Off 
RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^(aaa)$ /aaa/aaa.html [L] 

我沒有文件夾/ aaa/bbb /。當用戶訪問URL/aaa/bbb時,我的服務器應該返回文件/aaa/bbb.html的內容。我在/.htaccess中使用了以下代碼來嘗試完成工作。但它不起作用。它顯示404頁面。

RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^(aaa\/bbb)$ /aaa/bbb.html [L] 

我認爲這段代碼無法工作的原因是文件夾/ aaa/bbb /不存在。我不想創建文件夾/ aaa/bbb /。我想在/.htaccess中編輯代碼以完成工作。我應該如何更改/.htaccess中的代碼才能完成工作?

謝謝!

回答

0

您的規則實際上並不正確。由於RewriteCond %{REQUEST_FILENAME} -d表示現有目錄,而/aaa/bbb不是目錄。

試試這個代碼:

RewriteEngine on 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^(sub)/?$ /sub/try.php [L] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(sub/bbb)/?$ /sub/foo.php [L] 
相關問題