刚接触301重定向的新人 想问下怎么做单页面和批量页面的重定向
目前网站用的是discuzX3.0我希望把论坛的页面 http://www.XXX.com/forum.php
定向到域名:http://BBS.XXX.com
然后把其它的论坛页面:http://www.XXX.com/forum.php?mod=viewthread&tid=***
定向到:http://bbs.XXX.com/forum.php?mod=viewthread&tid=***
我试着按照
LNMP下Nginx如何设置域名301重定向http://lnmp.org/faq/lnmp-nginx-301-rewrite.html
这篇文章修改网站的conf文件
添加了这段
server {
server_name www.XXX.com/forum.php;
return 301 $scheme://bbs.XXX.com$request_uri;
}
重启nginx 提示:
estarting nginx daemon: nginxnginx: server name "www.XXX.com/forum.php"
has suspicious symbols in /usr/local/nginx/conf/vhost/www.XXX.com.conf:32
希望有人能说明一下怎么做单页面或者批量页面的重定向 server_name是域名,你输错了
discuzx论坛的forum.php 重定向好像是在论坛后台上设置
http://www.XXX.com/forum.php?mod=viewthread&tid=***
定向到:http://bbs.XXX.com/forum.php?mod=viewthread&tid=*** 前面的301配置就行
回复 2# 的帖子
哦哦只需要按照系统的设置调好了就行是么?
站点做的时间挺久的 论坛的forum.php页面有些权重
看了一些资料说做301可以传递页面权重
就想通过301先把单页面的权重传递到bbs.的域名上
回复 3# 的帖子
用过一次好像是这个disucz后台上就可以设置回复 1# 的帖子
这个是在discuzx 的后台里面的域名设置里面设置如果你用的是:www.xxx.com 那么默认域名那里就填写 www.xxx.com就行了。
如果你用的是:xxx.com,那么默认域名哪里就填写xxx.com就行了。
为了保险起见,你最好现做301跳转,有助于SEO,比如xxx.com跳转到www.xxx.com,然后再到discuzx后台域名设置那里把默认域名设置为:www.xxx.com就OK了。就可以把forum.php 去掉了
如果你301是xxx.com,那么默认域名那里就填写xxx.com。
有些人使用了子域名,这个具体要看你的域名和论坛是怎么解析,怎么做的。
[ 本帖最后由 408904199 于 2013-9-19 23:23 编辑 ]
回复 4# 的帖子
server {server_name www.XXX.com;
return 301www.XXX.com/forum.php(.*)$scheme://bbs.XXX.com$request_uri;
}
这种写法可行么?
【先不提discuz本身的设置 仅从运行环境角度考虑】
server {
server_name www.XXX.com;
return 301 $scheme://bbs.XXX.com$request_uri;
}
我查了些资料 这种写法的应该是把:www.xxx.com 的所有访问地址都转向到bbs.xxx.com
我只是想把www.xxx.com的部分地址转向到bbs.xxx.com
如转向到
怎么才能实现这种效果呢
同样还找有另一种写法不知道是否可行:
location www.XXX.com
{rewrite www.XXX.com/forum.php(.*)$ http://bbs.XXX.com/$request_uri permanent;}
location www.XXX.com
{rewrite www.XXX.com/forum.php$ http://bbs.XXX.com/ permanent;}
[ 本帖最后由 koslq 于 2013-9-21 11:23 编辑 ]
回复 5# 的帖子
你好 我是想把www.域中的部分内容转到bbs.域如果是单纯换域名的话我想也就没这么麻烦了...:Q
回复 6# 的帖子
不行,retrun 不能这么用,http://wiki.nginx.org/HttpRewriteModule#return用rewrite可以
这样试试
rewrite www.XXX.com/forum.php http://bbs.XXX.com permanent;
return 301 $scheme://bbs.XXX.com$request_uri;
回复 8# 的帖子
rewrite www.XXX.com/forum.php http://bbs.XXX.com permanent;return 301 $scheme://bbs.XXX.com$request_uri;
这个试过了
效果是把所有www.的地址定向到bbs.
还是不能单独把www.XXX.com/forum.php定向到bbs.XXX.com
尝试修改的时候发现 似乎只是return 301 $scheme://bbs.XXX.com$request_uri; 这条语句起作用
rewrite部分怎么改都没变化...
[ 本帖最后由 koslq 于 2013-9-27 13:29 编辑 ] bbs.xxx.com 和 www.xxx.com 域名放一个主机里
然后
if ($host != 'bbs.xxx.com' ) {
rewrite ^/(.*)$ http://bbs.xxx.com/$1 permanent;
}
这样试试,不行就没办法了,去dz论坛上看看有什么办法
回复 10# 的帖子
嗯~谢谢军哥 我试试看
页:
[1]