0

public_htmlディレクトリのルートに次の.htaccessを使用して標準のWordPressをインストールしています。

# 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

AuthTypeBasicで他のアプリケーションを含むディレクトリ/managerを保護したいので、.htaccessは次のようになります。

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]

AuthUserFile .htpasswd
AuthType Basic
AuthName "Admin Area"
Require valid-user

これが私の基本的な構造です:

/.htaccess
/index.php
/manager/.htaccess
/manager/index.php

これで、/ managerディレクトリにアクセスしようとすると、WordPressのインストールから404NotFoundを受け取ります。なんで?

4

2 に答える 2

0

書き換えとパスワード保護を有効にすると、あなたが持っているようないくつかの問題が発生し、htaccessファイルに次の2行を追加すると常に問題が修正されます。試してみてください:

ErrorDocument 401 default
ErrorDocument 403 default

編集 :

この行を変更します:

RewriteRule ^(.*)$ index.php [QSA,L]

これに:

RewriteRule ^(.*)$ /manager/index.php [QSA,L]
于 2012-08-18T20:04:27.320 に答える
0

ルートの .htaccess を変更して、WordPress で使用される書き換えルール (index.php を介してすべてを処理する) からディレクトリ /manager を削除する必要があります。

そのため、新しい書き換え条件を追加する必要があります。

# BEGIN WordPress

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.php$ - [L]

  RewriteCond %{REQUEST_URI} !^/( manager|manager/.*)$
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.php [L]
</IfModule>

# END WordPress
于 2012-08-18T20:18:17.490 に答える