2012-04-14 53 views
-1

這是我的.htaccess:htaccess的重寫/重定向目錄到URL

### PHP stuff 
AddHandler application/x-httpd-php5 .shtml .html .htm 

ErrorDocument 404 /404.shtml 

# Protect the htaccess file 
<Files .htaccess> 
Order Allow,Deny 
Deny from all 
</Files> 

Options +FollowSymlinks 

<IfModule mod_rewrite.c> 
### Turn the rewrite engine on 
RewriteEngine On 

RewriteCond %{HTTP_HOST} ^www\.MAINSITE\.co/SECONDSITE.org/$ [NC] 
RewriteRule ^(.*)$ http://www.SECONDSITE.org/$1 [R=301,L] 

### We want everyone to go to http://www.MAINSITE.co instead of without the www 
RewriteCond %{HTTP_HOST} !^www\.MAINSITE\.co$ [NC] 
RewriteRule ^(.*)$ http://www.MAINSITE.co/$1 [R=301,L] 

# BEGIN WordPress 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
# END WordPress 
</IfModule> 

# Disable directory browsing 
Options All -Indexes 

所以問題是,SECONDSITE身體坐作爲MAINSITE的子目錄,但我的主機重定向該目錄SECONDSITE.org

問題是,現在如果我嘗試去http://www.SECONDSITE.org,它會將我重定向到http://www.MAINSITE.co/SECONDSITE.org/這是一個有效的目錄,但這兩個站點完全不相關,我不希望任何人都看到這兩個站點之間的任何連接。事實上,我會希望301重定向扔出一個404,而不是301,如果有人在訪問MAINSITE時訪問SECONDSITE目錄

我意識到從非www到www重寫導致上述錯誤,所以我需要的是:

1)重定向非www MAINSITE.co到www.MAINSITE.co

2)重定向到http://www.MAINSITE.co/SECONDSITE.org/任何訪問http://www.SECONDSITE.org/(這也包括頁面,如果可能的話),甚至更好丟出404錯誤,並顯示錯誤頁面給任何人去http://www.MAINSITE.co/SECONDSITE.org/,同時允許正常訪問http://www.SECONDSITE.org/

3)確保有在任何情況下

我明白,我將可能需要創建2個.htaccess文件把一個在MAINSITE,另一個在SECONDSITE目錄中沒有無限循環,但我有不知道如何構建這一切...

感謝gazillion的幫助!正如你可以看到我的統計數據,我總是接受答案,並就有用的建議投票,這篇文章也不例外。再次感謝。

回答