-1

1) ネットワーク内に約 100 のサイトを持つ Wordpress マルチサイト サブドメイン インストールがあります。

Network Admin - Sites (All Sites) には、次のように表示されます。

main site: "www.domain-name.com"
all other sites: "subdomain-name.domain-name.com"

ドメイン マッピング プラグインもあるので、それらはすべて個別の URL としてアクセスできます。

domain-name1.com
domain-name2.com
...
domain-name100.com

2) 現在、すべてのブログの URL は次のように設定されています。

domain-name.com/2012/10/26/post-name
domain-name.com/category/category-name

(例として今日の日付を使用しました)

これは、ドメインが Google および Bing の検索結果に表示される方法でもあります

3) URL から「2012/10/26/」と「category/」を削除するので、次のようになります。

domain-name.com/post-name
domain-name.com/category-name

...そして、serp から来た人々をこれらの新しい URL にリダイレクトするための書き換えルールが必要です

4) 私は今このようなものを持っています:

RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ http://domain.com/$4 [L,R=301]

RewriteCond %{HTTP_HOST} ^domain\.com
RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)$ http://domain.com/$4 [L,R=301]

しかし、それが正しいかどうか、または正しく機能するかどうかはわかりません。また、1 つだけでなく、100 の Web サイトすべてにルールを設定する必要があります。これらのバージョン (そのうちの 1 つだけが使用されることを意図していました) には、「category/」部分も含まれていません。

5) 誰かがそれを行う方法を知っていれば、それは素晴らしいことです (すべてのサイトに対して 1 つまたは 2 つの書き換えルールが最適でしょう)。

情報をお寄せいただきありがとうございます。

4

1 に答える 1

0

で数字を照合し、 で一致グループのみを使用してRewriteRule、正規表現を単純化できます。この動作がすべてのドメインで同じである場合は、andからドメインを省略できます。\dpost-nameRewriteCondRewriteRule

RewriteRule ^\d{4}/\d{2}/\d{2}/(.*)$ $1 [L,R=301]
RewriteRule ^category/(.*)$ $1 [L,R=301]

上記のルールと結果の URL はhttp://htaccess.madewithlove.be/でテストできます。

于 2012-10-27T02:50:47.160 に答える