[英]Wordpress htacces, remove www, redirect to subfolder, clean url
有沒有人可以幫助我創建一個不錯的htaccess文件? 我目前在:
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中刪除www,然后將URL重定向到子文件夾main,然后隱藏/ main /,以便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。
感謝您對此的任何幫助。
威廉
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目錄中的index.php和.htaccess文件復制(不移動!)到您網站的根目錄(博客地址)中。 .htaccess文件是不可見的,因此您可能必須將FTP客戶端設置為顯示隱藏文件。 如果您沒有使用漂亮的永久鏈接,則可能沒有.htaccess文件。 如果您在Windows(IIS)服務器上運行WordPress並使用漂亮的永久鏈接,則WordPress目錄中將有一個web.config文件而不是.htaccess文件。 對於index.php文件,說明仍然相同,請將index.php文件復制(不要移動)到您的根目錄中。 必須將web.config文件與.htaccess文件區別對待,因此您必須將web.config文件移動(不要復制)到根目錄中。
在文本編輯器中打開根目錄的index.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,而無需進行其他修改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.