问题遇到的现象和发生背景
宝塔部署java内置项目时,通过域名访问和通过ip加端口访问得到的不一样
这是通过域名访问

默认页面

通过ip加端口访问

默认页面

操作环境、软件版本等信息
配置如下



宝塔部署java内置项目时,通过域名访问和通过ip加端口访问得到的不一样
这是通过域名访问



默认页面

配置如下



阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程
你遇到的问题是宝塔部署 Java 项目时,通过域名访问和通过 IP 加端口访问得到的结果不同。默认情况下,通过域名访问显示的是默认页面,而通过 IP 加端口访问显示的是 Java 项目的首页。
这是因为宝塔服务器的配置问题。宝塔服务器默认情况下使用的是 ServerName 指令来配置虚拟主机的名称,这个名称将被用于生成 URL。因此,当你通过域名访问时,URL 中的 Host 头将被设置为域名,而不是 IP 地址。
要解决这个问题,你可以在宝塔服务器的配置文件中添加 ServerAlias 指令,指定一个或多个别名,这样当你通过这些别名访问时,URL 中的 Host 头将被设置为指定的名称。
例如,你可以在 /etc/nginx/conf.d/default.conf 文件中添加以下配置:
server {
listen 80;
server_name example.com;
server_alias www.example.com;
...
}
这样,当你通过 example.com 或 www.example.com 访问时,URL 中的 Host 头将被设置为 example.com。
如果你想使用 IP 加端口访问,也可以在配置文件中添加 server 指令,指定 IP 地址和端口号:
server {
listen 192.168.1.100:8080;
...
}
这样,当你通过 192.168.1.100:8080 访问时,URL 中的 Host 头将被设置为 192.168.1.100。
希望这个解决方案能够帮助你解决问题。如果你还有其他问题,请随时问我。