2014-07-10 78 views
0

有沒有人可以幫助我創建一個體面的htaccess文件?我在這的時刻:WordPress的htacces,刪除WWW,重定向到子文件夾,乾淨的網址

RewriteEngine on 
Options +FollowSymlinks -MultiViews 

RewriteCond %{SERVER_PORT} =80 
RewriteCond %{HTTP_HOST} ^(www.)?outsideit.net$ 
RewriteCond %{REQUEST_URI} !^/main/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ http://outsideit.net/main/$1 
RewriteCond %{HTTP_HOST} ^outsideit\.net$ 
RewriteRule ^(/)?$ http://outsideit.net/main/index.php [R=301,L,QSA,NE] 

我的目標是,萬維網是URL中移除,那麼該URL重定向到子文件夾主,然後/主/隱藏,因此,網址會永遠是http://outsideit.net 我可以管理來實現以上:

RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^http://%1%{REQUEST_URI} [NE,R=301,L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_URI} !^/main/ 
RewriteRule ^(.*)$ /main/$1 
RewriteCond %{HTTP_HOST} ^(www.)?outsideit.net$ 
RewriteRule ^(/)?$ main/ [L] 

但隨後該網站不再工作,並給出了一個錯誤「該頁沒有正確重定向」。所以我需要以某種方式去index.php。

感謝您的任何幫助。

威廉

回答

0

WordPress的本身正是如此,無需不亞於你改變你的.htaccess。從這裏以下方向:http://codex.wordpress.org/Giving_WordPress_Its_Own_Directory

第一件事,第一,你開始在此之前,回到乾淨的.htaccess中的根的內安裝(不是網站的根目錄)。供您參考,這裏是默認的.htaccess的副本:

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

然後按照以下方向:

創建新的位置爲核心的WordPress文件存儲(我們將使用/在我們的例子中的wordpress)。 (在linux上,使用你的www目錄中的mkdir wordpress,你可能想在你創建的wordpress目錄中使用「chown apache:apache」。)

轉到「常規」面板。

在WordPress地址(URL)的框中:將地址更改爲主WordPress核心文件的新位置。示例:http://example.com/wordpress

在站點地址(URL)的框中:將地址更改爲根目錄的URL。示例:http://example.com

單擊保存更改。 (不要擔心錯誤信息,並且不要嘗試在此處查看您的博客!您可能會收到關於未找到文件的消息。)

將您的WordPress核心文件移至新位置(WordPress地址)。

從WordPress目錄複製(NOT MOVE!)index.php和.htaccess文件到您網站的根目錄(博客地址)。 .htaccess文件是不可見的,因此您可能必須將您的FTP客戶端設置爲顯示隱藏文件。如果你沒有使用漂亮的固定鏈接,那麼你可能沒有.htaccess文件。如果您在Windows(IIS)服務器上運行WordPress並且使用的是永久鏈接,則您的WordPress目錄中將具有web.config而不是.htaccess文件。對於index.php文件,說明保持不變,將index.php文件複製(不要移動)到根目錄。 web.config文件的處理方式必須與.htaccess文件不同,因此您必須將web.config文件移到(不要複製)到根目錄。

打開根目錄的索引。php文件在文本編輯器中

更改以下內容並保存該文件。更改這行: require(dirname(__FILE__) . '/wp-blog-header.php'); 以下內容,使用您的目錄名稱爲WordPress的核心文件: require(dirname(__FILE__) . '/wordpress/wp-blog-header.php');

登錄到新的位置。它現在可能是http://example.com/wordpress/wp-admin/

爲要存儲的核心WordPress文件創建新位置(我們將在我們的示例中使用/ wordpress)。 (在linux上,使用你的www目錄中的mkdir wordpress,你可能想在你創建的wordpress目錄中使用「chown apache:apache」)。

它會自動從www重定向到非www,而不需要額外的修改。

+0

謝謝你!我把這個問題放在了多個論壇上。得到了各種過於複雜的建議。你的真棒。一個小問題是主頁按鈕不再有效,但我在菜單儀表板中將其更改爲正確的網址。 – willemdh

+0

非常高興我可以幫忙! – michaelrmcneill

相關問題