WordPress用のRedirectMatchを使用して、.htaccessでディレクトリを除外します
-
20-12-2019 - |
質問
私のWordPressパーマリンク構造を%searfer%/%ヶ月%/%から%postname%
だから私は .htaccess でこのmodエイリアスルールを作成しますが、問題があります:
RedirectMatch 301 /\d{4}/\d{2}/([^/]+)(/?)(.*)$ http://domainname.com/$1
.
ルールはまた、WP-Contentディレクトリの下の画像をリダイレクトしているので、 domainname.com/wp-content/uploads/2013/11/name.jpg domainname.com/name.jpg
Rewritecondを使用できません。このRedireCMatchはmod_aliasですので、!^/(wp-content.*)$
を使用しようとしていますが機能しません。
どのように私は解決する方法?RedirectMachまたはRewriteruleを使用する方が良い(サーバーを変更していません)。
良い正規表現?
ありがとうございました!
解決
は、WordPressのmod_rewriteルールを妨害するのであるため、mod_aliasの代わりにmod_rewriteを使用する必要があります。mod_rewriteとmod_aliasの両方が、URLファイル処理パイプライン内の異なるポイントで同じ要求URIに影響します。そのため、リダイレクトされ、同時に書き直されることができます。
RewriteCond %{REQUEST_URI} !\.(jpeg|gif|png)$ [NC]
RewriteRule ^\d{4}/\d{2}/([^/]+?)(/?)(.*)$ http://domainname.com/$1 [L,R=301]
. 他のヒント
^
と$
:
RedirectMatch 301 ^/\d{4}/\d{2}/([^/]+)(/?)(.*)$ http://domainname.com/$1
. 所属していません StackOverflow