嗨,我想重定向www.domain.com/folder/*使用Apache的.htaccess到www.domain.com/folder/public/* (Apache的v 2.2.27)的.htaccess重定向,而不是重寫
我已經寫了下面的內容,但它重定向,而不是重寫(這裏重定向正確,就像www.domain.com/folder/login顯示網頁www.domain.com/folder/public/login)
.htaccess文件置於文件夾文件夾低於
AddType application/x-httpd-php70 .php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ /folder/public/$1 [L,R=301]
</IfModule>
如果我刪除標誌R = 301,並只保留L, 那麼URL www.domain.com/folder會搜索此www.domain.com/folder/public/ 文件夾,我不知道爲什麼?
我使用這個作爲我的laravel的根.htaccess文件5.3項目刪除公共文件夾,但我認爲在公用文件夾內的.htaccess文件是給這個衝突。在公共文件夾內
.htaccess文件是
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /folder/public/$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule^index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
什麼是我做錯了嗎?
感謝發佈。這沒有找到路線(404)。可能是因爲當我們說www.domain.com/folder時,它會查找www.domain.com/folder/public/folder這是不正確的(我不知道爲什麼),但是這應該查找www.domain.com/folder /上市。 – crazy1337
仍然是同樣的問題。 :(不知道爲什麼它搜索公共文件夾本身的當前url路徑 – crazy1337
嗯,我不能在這裏分享網址(這是在現場設置)。但是當我打電話/文件夾,然後它加載/公共/文件夾路線或當我們調用/文件夾/登錄它調用/ public/folder/login – crazy1337