NutzCN Logo
问答 前后台工程域名不同,访前台台域名会自动跳转到后台
发布于 2614天前 作者 qq_d6d46f6d 1863 次浏览 复制 上一个帖子 下一个帖子
标签:

比如 www.a.com 访问的时候会自动跳转到www.a.com/sysadmin
后台地址
后台使用的是nutzWk
明明后台也没有启动,后台也设定的了专用的二级域名,
后台代码中有这样一句

    private void initSysRoute(NutConfig config, Dao dao) {
        if (0 == dao.count(Sys_route.class)) {
            //路由示例
            Sys_route route = new Sys_route();
            route.setDisabled(false);
            route.setUrl("/sysadmin");
            route.setToUrl("/platform/login");
            route.setType("hide");
            dao.insert(route);
        }
        Globals.initRoute(dao);
    }

请问如何调整

11 回复

用nginx做的转发吗?

    @At(value={"/", "/index"}, top=true)
    @Ok(">>:/sysadmin")
    public void index() {}

是用nginx做转发,有一点儿不明白,后台工程没有启动的情况下这里
@At(value={"/", "/index"}, top=true)
@Ok(">>:/sysadmin")
public void index() {}
也会跳转吗?

nginx没设置对, Host没设置好

nginx设置如下

server {
        listen       80;
        server_name  www.a.com.cn;
        location / {
            proxy_pass   http://127.0.0.1:7070/index;
        }


    root         /usr/share/nginx/html;


    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }

}

server {
        listen       80;
        server_name  admin.a.com.cn;
        location / {
            proxy_pass   http://127.0.0.1:8080/platform/login;
        }


    root         /usr/share/nginx/html;


    error_page 404 /404.html;
        location = /40x.html {
    }

    error_page 500 502 503 504 /50x.html;
        location = /50x.html {
    }

}

curl以上配置中server_name是有正确内容返回的

访问http://www.shanbansyh.com.cn/ 日志如下

2017-10-27 16:07:18,887 org.nutz.mvc.impl.UrlMappingImpl.get(UrlMappingImpl.java:110) DEBUG - Search mapping for [GET] path=/indexsysadmin : NOT Action match
2017-10-27 16:07:18,888 org.nutz.mvc.impl.UrlMappingImpl.get(UrlMappingImpl.java:110) DEBUG - Search mapping for [GET] path=/WEB-INF/view/error/404 : NOT Action match
proxy_set_header Host $http_host;

top=true, 升级为顶层路径映射,不受类的@At及主模块@At的配置所影响, 默认为false
这是啥意思

我觉得不是我nginx的问题(现在已经停用)。。
前台的url会被后台的方法截掉,换成sysadmin.但是我现在admin的方法
整个项目只有后台,现在我把后台这个类里面方法干掉,就是下面这段

    @At(value={"/", "/index"}, top=true)
    @Ok(">>:/sysadmin")
    public void index() {}

反编译tomcat上面的类,确实没有这方法了,但还是被截成/sysadmin。
两个工程是在一个tomcat下面,都走了80端口,一个用www,一个用admin。

添加回复
请先登陆
回到顶部