0

我现在的htaccess样子

DirectoryIndex welcome.do index.jsp default.php index.wml homepage.php default.htm default.html index.php index.php4 index.php3 index.htm index.html index.shtml default_new_vhost.html

# 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

RedirectPermanent /content.asp?AUID=01 /content/
...

重定向不起作用(我只得到了 Wordpress 的 404 页)。原因是 URL 中的 get 参数。我尝试了此处发布的答案。例如

RewriteCond %{REQUEST_URI} ^/content.asp$
RewriteCond %{QUERY_STRING} ^AUID=01$
RewriteRule ^.*$ http://www.yourdomain.com/content? [L,R=301]

要么我收到 500 错误,要么我来到 Wordpress 的 404 页面。这样做的正确方法是什么?比我在表格中有很多条目

RedirectPermanent /content.asp?pCategory=&pCountry=1&AUID=01 /content/

这是错误的,但我寻找一种有效的方法将其放入 htaccess 中。我可以改用这样的东西吗?

RewriteCond %{REQUEST_URI} ^/content.asp$
RewriteCond %{QUERY_STRING} ^pCategory=([0-9]+)&pCountry=([0-6]+)$
RewriteRule ^.*$ http://www.yourdomain.com/content? [L,R=301]
4

2 回答 2

0

我最终得到了以下解决方案:

DirecotryIndex welcome.do index.jsp ...

RewriteCond %{REQUEST_URI} ^/content.asp$
RewriteCond %{QUERY_STRING} ^AUID=01$ [OR]
RewriteCond %{QUERY_STRING} ^pCategory=&pCountry=1&AUID=01$ [OR]
RewriteCond %{QUERY_STRING} ^pCategory=&pCountry=8&AUID=01$
RewriteRule ^.*$ /content? [L,R=301]

RedirectPermanent /italiano/index.asp /it/

# 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

问题是我把我的代码放在了 Wordpress 代码之后而不是之前。如果您将 htaccess 的编码更改为没有 BOM 的 UTF-8,也可以使用变音符号。您还可以毫无问题地重定向到带有 GET 参数的 URL。

于 2012-09-05T08:37:00.730 回答
0

你只需这样做(来自我的网站)

rewriteCond %{QUERY_STRING} ^id=([0-9]+)$
rewriterule ^news_details.asp$ news/index.php?old_id=%1

将 ^id 替换为任何参数,只需用户 %1, %2 在重写中访问它们,您的将是

rewriteCond %{QUERY_STRING} ^pCategory=([0-9]+)&pCountry=([0-6]+)$
rewriteRule ^content.asp$ /content/?category=%1&country=%2
于 2012-09-04T19:50:00.550 回答