nginx代理简单配置实现修改网站域名

nginx代理简单配置实现修改网站域名,第1张

部署的项目,用户想要只输入网址就能访问,但实际的情况是,网站需要属于项目名称和端口号才能访问,那么解决的办法有两种:

一、修改tomcat配置

1.修改context ,配置默认的项目名称,使不用输入项目名称

修改conf文件夹下的server.xml文件

path:是指web项目的访问URL路径,设置为空

docBase:项目所在的文件

2.修改端口,将端口号改为80

80 端口是HTTP开放的,是浏览网页服务默认的端口号,所以可以达到只输入网址不用输入端口号就可以访问的目的

二、用nginx代理,来修改网站域名(因为客户机器80端口,没有被占用,但是tomcat启动不起来,不知道原因)

1.修改tomcat ,使其能够通过localhost加端口访问

2.修改naginx 的配置

将proxy_pass 改为自己网站访问的网址

将listen监听端口改为80

ok,该方法经过验证是可行的

我用的springmvc框架,可以在controller层通过

String ipFromNginx = getHeader(request, "X-Real-IP")  

来获取真正ip

开始建站了,暂时还没想要做些什么东西。

Anyway,先搞个云服务器吧,那要怎么搭建呢?先来个最简单的。

Nginx 配置文件目录一般在 /etc/nginx/ 下,打开 nginx.conf 文件可以看到配置:

当外网用户访问服务器 Web 服务由 Nginx 提供,Nginx 需要配置静态资源的路径信息才能通过 URL 正确访问到服务器上的静态资源。

当我们在服务器上安装并启动 Nginx 之后,就可以通过 http://<域名或IP> 访问我们的网页了。所以,在浏览器中输入 http://100.2.3.4 即可。

我们观察到浏览器的地址变成了 http://100.2.3.4/index.html ,这页面是安装 Nginx 的默认站点,可以在 /usr/share/nginx/html 目录下找到。在 nginx.conf 配置文件中,有一项 root /usr/share/nginx/html 的配置,意思是当外网访问服务器 跟目录 时,Nginx 会将资源指向 /usr/share/nginx/html 的站点。

但如果输入地址,无法打开(如下截图)。

以阿里云为例,需要在云服务器添加 “安全组规则” ,添加并保存,重新刷新页面就能打开了。

我习惯将前端静态资源放置到服务器的 /data/www 下,因此将配置修改为 root /data/www 。此时访问 http://100.2.3.4 会指向 /data/www/index.html (在不配置 location 的 index 情况下,Nginx 默认配置是 index.html )。

由于我使用的是 Mac 机器,因此可以直接在系统终端使用 scp 命令将本地文件上传到云服务器。

scp (secure copy)用于在 Linux 下进行远程拷贝文件的命令。类似于 cp ,只不过 cp 只能在本机进行拷贝,不能跨服务器。 -r 表示递归复制整个目录。

需要注意一下,下面两种的区别:

其中 1️⃣ 得到的是 /data/www/dist ,而 2️⃣ 得到的是 /data/www 。前者表示将 dist 整个目录拷贝至 /data/www 下。后者是把 dist 目录下的所有子文件和子目录都拷贝至 /data/www 。

换句话说就是,前者配置 root 的路径应该是 /data/www/dist ,后者则为 /data/www 。

效果如下:

在浏览器中访问 http://100.2.3.4 即可看到我们配置的网页了。

最简单的 Nginx 部署静态网页就完了,其他的下次再讲...

The end.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11737477.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存