全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 2264|回复: 6

[已解决] 求一个nginx 404 跳转规则

[复制链接]
发表于 2012-7-28 17:24:45 | 显示全部楼层
taoke 发表于 2012-7-28 17:18
用了以后,貌似不会跳转.

然后学习了一下你的设置.和我贴出的代码放一起实现了~ ...

你pm我网址
我看看能不能不用if就实现
 楼主| 发表于 2012-7-28 17:03:29 | 显示全部楼层 |阅读模式
实现目标:
当用户访问 http://xxx.com/attachment/ 目录时,如果文件或目录 不存在(404),则跳转到 http://baidu.com/attachment/ 访问.

自己摸索是这样实现的.但是和伪静态有点冲突.请高手指点.

if (!-e $request_filename) {
                     rewrite ^/(.*)$ http://baidu.com/$1 permanent;
                }
发表于 2012-7-28 17:10:07 | 显示全部楼层
试一下这个:
location ~* ^/(attachment)/ {
     try_files $uri $uri/ http://baidu.com/$1/ =404;
}

不行再改

评分

参与人数 1威望 +1 收起 理由
taoke + 1 赞一个!

查看全部评分

发表于 2012-7-28 17:14:28 | 显示全部楼层
不会,帮顶
发表于 2012-7-28 17:16:42 | 显示全部楼层
本帖最后由 每次醒来 于 2012-7-28 17:17 编辑
  1.         location / {
  2.                 root    /var/保密/保密/;
  3. error_page 404 /404.html;
复制代码
我的是这个
error_page 404 /404.html             //404.html放在网站根目录

 楼主| 发表于 2012-7-28 17:18:05 | 显示全部楼层
lazyzhu 发表于 2012-7-28 17:10
试一下这个:
location ~* ^/(attachment)/ {
     try_files $uri $uri/ http://baidu.com/$1/ =404;

用了以后,貌似不会跳转.

然后学习了一下你的设置.和我贴出的代码放一起实现了~
发表于 2012-7-28 17:34:03 | 显示全部楼层
下面这种方法最好:
location /attachment/ {
  error_page     404 = @mjj;
}
location @mjj {
  return 301 http://baidu.com/;
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-5-5 07:18 , Processed in 0.065178 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表