-1

我不是 .htaccess 方面的专家。我想将我的新闻和博客网址(带或不带 www)重写为:

bdnews24.com/reporter.php?u=名称到-> bdnews24.com/Name

m.bdnews24.com/reporter.php?u=名称到-> m.bdnews24.com/Name

img.bdnews24.com/image.php?id=791011.jpg to-> img.bdnews24.com/791011.jpg

bdnews24.com/details.php?id=100200300 to-> bdnews24.com/100200300

我当前的 .htaccess 文件在下面,它没有按我的意愿工作。这会捕获所有请求 URI,如果不存在,它将转到 index.php?u=ANYTHING

Options +FollowSymlinks
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# AlegroCart REWRITES START
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index.php/$1 [L,QSA]
4

1 回答 1

1

根据您提供的信息,这组规则应该可以满足您的需求:

RewriteCond {%QUERY_STRING} ^u=(.*)
RewriteCond %{HTTP_HOST} ^(m.|www.)?bdnews.com$
RewriteRule ^reporter.php /%1?

RewriteCond {%QUERY_STRING} ^id=(.*)
RewriteCond %{HTTP_HOST} ^img.bdnews.com$
RewriteRule ^image.php /%1?

RewriteCond {%QUERY_STRING} ^id=(.*)
RewriteCond %{HTTP_HOST} ^(m.|www.)?bdnews.com$
RewriteRule ^details.php /%1?

首先它匹配查询字符串,然后是主机名,然后将原始查询字符串 (%1) 重写为新 URL。

于 2013-01-19T17:23:40.680 回答