开发者社区> 问答> 正文

nginx怎么做301重定向,哪里出错了

以前直接用的.htaccess文件,但在阿里云上上传.htaccess文件没显示出来,打开域名也没成功,有人说可先上传1.htaccess然后去掉修改名字,可是修改不成功(ftp服务拒绝了申请的服务)。


然后用nginx做重定向,网上寻找了答案,基本都是说修改 nginx.conf这个文件,但是修改代码上传后用 命令“nginx -t”测试显示都是失败。



nginx: [emerg] "server" directive is not allowed here in /alidata/server/nginx/conf/nginx.conf:58
nginx: configuration file /alidata/server/nginx/conf/nginx.conf test failed


弄了好久,说是添加一段代码


代码是

    gzip on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types       text/plain application/x-javascript text/css application/xml;
    gzip_vary on;
    #limit_zone  crawler  $binary_remote_addr  10m;
    log_format '$remote_addr - $remote_user [$time_local] "$request" '
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';
    include /alidata/server/nginx/conf/vhosts/*.conf;
}


server {
server_name www.demosen.com demosen.com ;
if ($host != 'www.demosen.com' ) {
rewrite ^/(.*)$ http://www.demosen.com/$1 permanent;
}


红色为后来添加的,有人说是引号的大小写,但还是不行。


查找答案的时候一直个问题,有人说修改代码,我一直弄不清楚是在页面底部直接添加还是在本身里面"server_names_hash_bucket_size 128;"这段后面修改,网上看了好多答案,但都是仅有添加的那段代码,不知道放什么位置。

展开
收起
午夜的温柔 2014-04-01 11:59:05 11227 0
5 条回答
写回答
取消 提交回答
  • Renginx怎么做301重定向,哪里出错了
    其实.htaccess已经足够强大了。
    2015-01-25 22:56:00
    赞同 展开评论 打赏
  • Renginx怎么做301重定向,哪里出错了
    好!
    2014-04-25 16:11:52
    赞同 展开评论 打赏
  • 回2楼林林林的帖子
    嗯  我看到了,笑得好美
    2014-04-07 13:26:05
    赞同 展开评论 打赏
  • 我发自内心的微笑了。。。。
    2014-04-03 22:38:21
    赞同 展开评论 打赏
  • Renginx怎么做301重定向,哪里出错了
    这种蛋疼写法都是谁教的啊
    server {
      server_name www.domain.com;
      return 301 $scheme://domain.com$request_uri;
    }
    server {
      server_name domain.com;
      [...]
    }

    自己理解一下吧,这种写法多明了啊
    2014-04-02 22:40:11
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《Nginx 代理系统常用手册》 立即下载
CentOS Nginx PHP JAVA 多语言镜像使用手 立即下载
CentOS Nginx PHP JAVA多语言镜像使用手册 立即下载