我試圖做這件事: 我想重定向特定域的所有流量A到根的子文件夾。我會用他們的子文件夾對多個域做同樣的事情。htaccess - 多域到子文件夾
例子:
www.domaina.it -> /public_html/domainadir/
www.unioncucine.it -> /public_html/unioncucine/
對於我已經使用這個代碼,似乎工作做到了:
DirectoryIndex index.php index.html
DirectorySlash Off
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/unioncucine/
RewriteCond %{HTTP_HOST} ^(www\.)?unioncucine\.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /unioncucine/$1
RewriteCond %{HTTP_HOST} ^(www.)?unioncucine.it$
RewriteRule ^(/)?$ /unioncucine/index.html [L]
它似乎工作,但不是在這種情況下:
我想訪問www.unioncucine.it/web,我已經加載了一個測試joomla頁面(它沒有模板,因爲我正在處理它)。
如果你到這裏:www.unioncucine.it/web我被重定向到www.unioncucine.it/unioncucine/web/,它不會加載正確的內容。
去這裏:www.unioncucine.it/web/它工作正常。 (該頁面只是一些詞和一個css scretch)。
#Changing
RewriteRule ^(.*)$ /unioncucine/$1
#To
RewriteRule ^(.*)$ /unioncucine/$1/
它似乎沒有重定向的工作,但其他文件夾內的所有文件都不可用。
謝謝
編輯:
改變你告訴:
RewriteCond %{REQUEST_URI} !^/web/templates/protostar/ [NC]
RewriteRule ((?:css|js|images)/.+)$ /web/templates/protostar/$1 [L,NC,R=301]
RewriteCond %{REQUEST_URI} !^/unioncucine/
RewriteCond %{HTTP_HOST} ^(www\.)?unioncucine\.
RewriteCond %{REQUEST_FILENAME} !-f
#RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /unioncucine/$1/
RewriteCond %{HTTP_HOST} ^(www.)?unioncucine.it$
RewriteRule ^(/)?$ /unioncucine/index.html [L]
但它仍然不起作用:http://www.unioncucine.it/css/template.css
我試過,但沒有任何改變。 – atti
在新瀏覽器中嘗試'www.domaina.it/test'。 – anubhava
好吧,似乎有效,但深入我有這個問題:使用RewriteRule ^(。*)$/domainadir/$ 1/[L],根已加載,但所有其他文件(如css文件)由於404錯誤。如果我把RewriteRule ^(。*)$/domainadir/$ 1 [L](刪除最後一個'/'並添加RewriteCond%{REQUEST_FILENAME}!-f)文件被加載,但我有以前的問題,我重定向。我找不到解決這兩個問題的解決方案。 – atti