1

GoDaddy Delux Hosting、Linux サーバーを使用しています。ルートディレクトリにワードプレスをインストールしています。ルート ディレクトリの下に開発ディレクトリを作成しました。開発ディレクトリの下にワードプレスをインストールしていませんが、自分のプロジェクトです。

私の目的は、開発ディレクトリのためだけにワードプレスの URL 書き換えを回避し、開発ディレクトリで始まるすべての URL を development/index.php にリダイレクトすることです。多数の mod_rewrite の組み合わせを試しましたが、うまくいきませんでした。mysite.com/development/index.php を除くすべての標準のワードプレス「ページが見つかりません」ページが表示されます

私が思いついた最後の構成は次のとおりです。

ルート ディレクトリ .htaccess ファイル:

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

開発ディレクトリ .htaccess ファイル:

RewriteEngine On
RewriteRule .* index.php [L]

これに最善のアプローチ方法はありますか?

PS: Wordpress でスラ​​ッグとして「開発」を使用したことはありません。

4

1 に答える 1

6

メイン.htaccessファイルでは、「開発」の下にあるものはすべて無視する必要があります。最初のスラッシュは必要ありRewriteBase /ませ?.*$

サブディレクトリでは、リクエストがファイルまたはディレクトリではない場所にRewriteBase /development/すべてを送信することを使用して、書き換えのためにサブディレクトリにないものを無視します。/development/index.php

次のことを試してください。

/.htaccess

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

/開発/.htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /development/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /development/index.php [L]
</IfModule>
于 2013-04-29T17:18:03.873 に答える