0

私は自分のサーバーをローカルできれいに見せようとしています (私は OCD だと断言します)。私がやっていることは、wordpress ブログをすべてのサブドメインと組み合わせることです。

私のワードプレス ブログは私のメインのウェブサイト、example.com です。私のサブドメインは sub.example.com にあります。

今、私はこのセットアップを持っています:

public_html
   ( wordpress files here )
   subdomains
      sub1 - (sub1.example.com)
      sub2 - (sub2.example.com)
      sub3 - (sub3.example.com)
   blog - (empty)

ブログフォルダが空です。ただし、すべての wordpress ファイルを blog/ に移動したいのですが、ブログの URL はhttp://www.example.com/のままにします。したがって、http://www.example.com/index.phphttp://www.example.com/blog/index.phpとblog/ 内のすべてのディレクトリに移動します。

このコードは機能しませんでした:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ blog/$1.php [L]

代わりに / のインデックスをくれました。これを行う方法はありますか?

4

3 に答える 3

0

そこにリダイレクトがあっても、サイトアドレスを /blog で構成する必要があることを忘れないでください -

http://www.example.com/blog/

  • ワードプレスの設定で。
于 2012-11-22T02:11:50.097 に答える
0

これを行う最善の方法は、すべてのファイルを /blog に移動してから、www の Apache サイトルートを再定義することです。のようなブログフォルダーを含めるドメイン

DocumentRoot /(path)/public_html->DocumentRoot /(path)/public_html/blog

そうすれば、ブログ フォルダーを www ドメインのルートに正しくマップするために .htaccess 書き換えを使用する必要さえありません。

何らかの理由でそれができない場合は、htaccess ルールを見てみましょう。

RewriteCond %{REQUEST_FILENAME} !-f    
RewriteCond %{REQUEST_FILENAME}.php -f

この 2 つが競合します。[OR]の末尾に がない場合RewriteCond、ルールは AND 演算子として機能し、各条件が真でなければならないことを意味します。!-fそのため、ファイルではなく ( ) かつ .php ファイル ( )である一致は決してありません.php -f

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ blog/$1.php [L]

ここでは、RewriteCond ごとに .php を既に含む一致に .php を追加しています。

私は次のことを試します:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$
RewriteCond %{REQUEST_URI} !^/blog/
RewriteRule ^(.*)$ /blog/$1 [NC,L]

すべてのファイルを /public_html/blog に移動し、/public_html には /blog フォルダーと /subdomain フォルダー以外は何もない場合、一致するファイルやフォルダーがないため (サブドメイン フォルダーを除く) !-d&も必要ありません。!-fとにかくwwwドメインの下で提供されているものを望んでいるかどうかはわかりません)。wordpress の css、js、および画像も /blog にどのように配置されるかを見て、それらの URL も転送する必要があります。RewriteBase /また、ルート フォルダーで作業する場合は特に必要ありません。のようなスラッシュでターゲット URL を開始するだけ/blog/$1です。最後に、無限のリダイレクトを防ぐために、ターゲット要求に /blog がまだ含まれていないことを確認する条件を追加しました...

于 2012-11-19T22:12:25.690 に答える