1

我在网站的根目录中有一个 .htaccess 文件,看起来像这样

RewriteRule ^some-blog-post-title/ http://website/read/flowers/a-new-title-for-this-post/ [R=301,L]
RewriteRule ^some-blog-post-title2/ http://website/read/flowers/a-new-title-for-this-post2/ [R=301,L]

<IfModule mod_rewrite.c>
RewriteEngine On

## Redirects for all pages except for files in wp-content to website/read
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !/wp-content
RewriteRule ^(.*)$ http://website/read/$1 [L,QSA]

#RewriteRule ^http://website/read [R=301,L]

RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
  1. 我的意图是如果人们提出其中一篇特别的博客文章,则将他们重定向到新的博客文章位置。
  2. 如果不是这种情况,则应将它们重定向到http://website.com/read
  3. http://website.com/wp-content/ * 中的任何内容都不应被重定向。

到目前为止,条件 1 和 3 都已满足。我怎样才能满足条件2?

注意:我想重定向到/read甚至存在的内容以防止任何图像、CSS 或 javascript 工作,除了那些/wp-content

4

1 回答 1

1

将您的第一条规则设为:

## Redirects for all pages except for files in wp-content to website/read
RewriteRule !^wp-content/ http://website.com/read%{REQUEST_URI} [NC,L,R=302]
于 2013-10-29T15:23:36.260 回答