2013-01-21 52 views
2

客戶端向其文檔根目錄添加了WordPress安裝。之後,一個非WordPress目錄提供了一個404.404由於WordPress的mod_rewrite規則?

在瀏覽器中,您可以訪問/foo/facebook/index.php而不會出現問題,但如果您嘗試訪問/foo_admin/index.php,則會獲得WordPress 404頁面。 Wordpress在/(由於雜亂,未在此處顯示)。

這裏是文檔根目錄下的所有的.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 

編輯:

剛剛意識到在/ gcb_admin一個基本身份驗證的.htaccess莫名其妙的干擾。現在已經嘗試在基本認證指令前後都添加RewriteEngine,但這不會改變任何內容。刪除基本身份驗證的指令允許訪問文件...

AuthUserFile /home/foof/.htpasswd 
AuthName "FOO Admin" 
AuthType Basic 

<Limit GET> 
     require valid-user 
</Limit> 

RewriteEngine off 

如何糾正呢?

+1

不清楚WP安裝在哪裏或者.htaccess文件在哪裏,這些目錄樹似乎都不是WP。但是,它看起來像'RewriteBase'路徑不是根,應該改變。 –

+0

你是對的,每matthewpavkov我最後一行改爲'RewriteRule ./ /index.php [L]',並解決問題。謝謝! – jerrygarciuh

回答

2

嘗試這種解決方案 - 從本質上講,它只是關閉在特定的目錄重寫引擎:

http://wordpress.org/support/topic/exclude-directories-from-wp-rewrite

添加.htaccess文件到您想要的WordPress的重寫忽略目錄,使用此代碼:

RewriteEngine off 

或者,嘗試改變,你必須在最後一行:

RewriteRule ./ /index.php [L] 
+0

將WP RewriteRule的最後一行改爲'RewriteRule ./ /index.php [L]'解決了這個問題。謝謝!你介意解釋一下這個語法的作用嗎? – jerrygarciuh