wordpress ネットワーク サイトで htaccess の問題を解決しようと頭を悩ませていましたが、過去に stackoverflow から非常に多くの情報を得たので、これが質問するのに最適な場所だと思いました。そして、私が正しく投稿していない場合は、前もってお詫び申し上げます。初めてです。
ここに私のセットアップの詳細があります(ある種のNDAに同意しているため、サイトへのアクセスを表示または許可することはできません)
- 2サイトあります。1 つ目はルート サイト "/" で、2 つ目は "/mythoughts/" です (ネットワーク管理者に表示)。
- 「/mythoughts/」サイトは、誰かが作成した、URL に変数を使用する古いカスタム ブログ (カスタム) の代替です。
- 私が使用しているテーマは 20 と roots です (明らかに、roots はネットワーク設定上できちんとした URL の書き換えを行いません)
問題はこれです。
最初の「index.php が URL から削除されています (問題ではありませんが、他の書き換えを行うと問題が発生する可能性があると思います。)
次に、古いサイトには 2 つのインスタンスの URL に変数があります。
最初のインスタンスはこれです
www.thesite.com/mythoughts/index.php?year=2010&month=9
私は次のように書き直す必要があります
www.thesite.com/mythoughts/2010/9
まず index.php が自動的に削除されます
私は非常に多くの異なることを試しました
RewriteRule ^mythoughts/index.php?year=(.*)&month=(.*)$ mythoughts/$1/$2 [R=301,L]
動作しません
2番目のインスタンスはこれです
www.thesite.com/mythoughts/index.php?thought=101
に書き換える必要があります
www.thesite.com/mythoughts/title-of-the-post
url 変数を投稿のタイトルに一致させる (および無効な文字を置き換える) ことができるスクリプトがありますが、書き換えは機能しません。
ここに私が現在持っているhtaccessがあります(裸のワードプレス)
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
</IfModule>
#END WordPress
誰かがこの htaccess の全体 (私がここ数週間苦労してきたこと) について正しい方向に私を向けるのを助けることができれば、私は完全に素晴らしいでしょう.
よろしくお願いします。