私はWordPressサイトのURLからサブフォルダを削除するのに苦労しています。
現在のURLフォーマットはwww.mysite.com/subfolder/index.php/category/postname
です。
URLからサブフォルダとindex.phpの両方を削除したいです。
このサイトは私のサーバーのrootのサブフォルダーに入っていなければなりません。
私の現在のhtaccess
ファイルは:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /subfolder/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /subfolder/index.php [L]
</IfModule>
うまくいきませんでしたが、以下を追加しようとしました。
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^subfolder/(.*)$ http://www.mysite.com/$1 [R=301,L]
RewriteRule .* index.php/$0 [PT,L]
正確に何が欲しいのかわからない。もう少し詳しく質問をお願いします。
www.mysite.com/subfolder/postname
(subfolder
はあなたのWordPressがインストールされている場所です)のようなURLが欲しい場合は、 設定>パーマリンク に行き、 ポスト名 に変更してください。
_編集_
WordPressのインストールがsubfolder
にあり、www.mysite.com/category/postname
のようなURLが必要な場合は、 WordPressアドレス と サイトアドレス の両方をwww.mysite.com
と パーマリンク に設定し、カスタム構造を選択します。そしてこのタグ/%category%/%postname%
を使用してください。
WPサイトのURLと自宅のURLは、設定/全般で異なるようにする必要があります。ホームのURLはexample.com
、サイトのURL(WPがある場所)はexample.com/wp
(またはどこに置いても)にする必要があります。
あなたはあなたの設定ファイルでこれらをハードコードすることができます:
define('WP_HOME', 'http://example.com');
define('WP_SITEURL', 'http://example.com/wp');
WPはそこから物事を取り出す方法を知り、それがあるべき場所に.htaccessを配置する必要があります。
そうでない場合、私自身のサイトのフォルダはこのようになります:
Index.phpファイルには以下が含まれています。
<?php
// WordPress view bootstrapper
define( 'WP_USE_THEMES', true );
require( './wp/wp-blog-header.php' );
そして.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
WPによって生成されたURLの/index.php
ビットに関して、それはWPがあなたのサイトがパーマリンクを管理することができないことを(誤って?)見つけていることを意味します。 (これはあなたが Nginx を使っているからだと賭けることができますか?)
あなたがWPよりよく知っていると仮定して、あなたのwp-content/mu-pluginsフォルダに必需品プラグインを追加してください。 force-permalinks.phpファイル:
<?php
add_filter( 'got_rewrite', '__return_true' );