我一直在向朋友提供我的子域名,直到他设法获得新域名。
现在他拥有它,我想将所有旧链接重定向到他的域名:
示例:
http://subdomain.my-domain.com/post.php?118&tg=602643
重定向到
http://subdomain.com/post.php?118&tg=602643
所以我想跟上重定向
中post.php背后的所有变量我是.htaccess新手 - 你能帮我提供正确的重写规则吗?
此外,如果你碰巧有关于.htaccess的任何好文章以及如何管理它,那么非常感谢链接。
由于
修改 这是我想要做的实际用例: 重定向
http://raketa2.tasselhof.com/nastenka.php?115&up=648483
到
http://www.raketa2.cz/nastenka.php?115&up=648483
但是,由于我的网站上不存在更多子域名,因此我在主页上看到404错误:
/nastenka.php?115&up=648483 -> Provided 404 Error
我试过了:
RewriteCond %{Request_URI} ^/nastenka\.php [NC]
RewriteCond %{QUERY_STRING} ^\d+&tg=\d+$ [NC]
RewriteRule ^(.*)$ http://www.raketa2.cz/$1?%{QUERY_STRING} [R=301,L]
但没有好处......
解决 咄!我真傻。我刚刚向域DNS添加了两条新的CNAME记录。应该做的伎俩
答案 0 :(得分:1)
这样做:
RewrtiteEngine on
ReWriteBase /
RewriteCond %{HTTP_HOST} ^subdomain\.
RewriteRule ^(.*)$ http://subdomain.com/$1?%{QUERY_STRING} [R=301,L]
QUERY_STRING post.php?118&tg=602643
将会出现。
- 假设您的域名中没有
post.php
,
这样做:
RewrtiteEngine on
ReWriteBase /
RewriteCond %{Request_URI} ^/post\.php [NC]
RewriteRule ^(.*)$ http://subdomain.com/$1?%{QUERY_STRING} [R=301,L]
- 如果您的域中存在
post.php
,但您没有使用类似的查询字符串,
这样做:
RewrtiteEngine on
ReWriteBase /
RewriteCond %{Request_URI} ^/post\.php [NC]
RFewriteCond %{QUERY_STRING} ^\d+&tg=\d+$ [NC]
RewriteRule ^(.*)$ http://subdomain.com/$1?%{QUERY_STRING} [R=301,L]