2012-10-09 16 views
0

我想将所有/ wordpress /请求重定向到根目录中的相同地址。尝试将所有子目录请求重定向到根,但它根本不起作用

例如: /WordPress的/富 - > /富

我想这个答案我发现它添加到.htaccess文件:

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteRule ^wordpress/.*$/[R=302] 
</IfModule> 

,但不用说,它只是重定向直接请求/ wordpress/to /。

例如/ wordpress/foo /的请求仍将被视为/ wordpress/foo /。

我尝试了我发现的一切,但没有任何工作。

网站地址为http://www.ist118.com/

不重定向的例子地址是正确http://www.ist118.com/wordpress/%D8%A8%D9%87%D8%AA%D8%B1%DB%8C%D9%86-%D8%B1%D8%A7%D9%87%D9%86%D9%85%D8%A7%DB%8C-%D8%AE%D8%B1%DB%8C%D8%AF-%D8%A7%D8%B2-%D8%A7%D8%B3%D8%AA%D8%A7%D9%86%D8%A8%D9%88%D9%84/%D9%82%DB%8C%D9%85%D8%AA-%D8%AE%D9%88%D8%B1%D8%A7%DA%A9%DB%8C-%D9%87%D8%A7-%D8%AF%D8%B1-%D8%A7%D8%B3%D8%AA%D8%A7%D9%86%D8%A8%D9%88%D9%84/

(网址是因为UTF8阿拉伯字符的编码)

完整的.htaccess内容:

RewriteOptions inherit 

# 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 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteRule /wordpress/(.*) /$1 [PT] 
</IfModule> 

回答

1

试试这个:

RewriteRule /wordpress/(.*) /$1 [PT] 

修订

我觉得你的.htaccess应该是这样的:

RewriteOptions inherit 

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/
RewriteRule /wordpress/(.*) /$1 [PT] 
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

修订

只为您的Infor mation。

如果你只需要透明的重定向,你应该使用

RewriteRule /wordpress/(.*) /$1 [PT] 

在这种情况下,重定向将透明,用户将仍然看到旧网址在浏览器的地址栏中

但是如果你想用户知道该URL被改变,你应该在这种情况下,URL中使用

RewriteRule /wordpress/(.*) /$1 [R=301] 

将在浏览器的地址栏中的变化太大

还有一:

R=301 - is for permanently moved URLs (user's browser will rememeber the new URL) 
R=302 - is for temporarely moved URLs 
0

以下应该这样做:

RewriteEngine On 
RewriteRule "^wordpress/?(.*)" "/$1" [R=302] 

UPDATE:加问号“/”,以使重定向即使没有子路径。

+1

它仍然只是重定向的基础文件夹,而不是当有添加到地址的子文件夹。所以,基本上和以前一样。 –

+1

以上,Apache将/ wordpress下的所有内容重定向到/,即/ wordpress/blah转到/ blah。这不是预期的行为? – por

+0

请注意,在.htaccess上下文中,要匹配的路径总是相对的(即不以/开头)。在另一个答案(我无法评论)中,示例以a开头,而这在.htaccess中不起作用。 – por

相关问题