配置Nginx到linux和使用过程

本文详细介绍了如何在Linux服务器上将动态IP改为静态IP,以降低项目维护成本。接着,通过克隆虚拟机部署Nginx,包括上传Nginx压缩包、修改配置文件、设置虚拟主机和日志文件,以及讲解了location语法和反向代理配置,特别是针对前端和后端资源的路由策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.修改我们的linux动态ip为静态,因为我们的项目部署的服务器如果ip经常变动,那么访问项目将会增加很多人工维护的成本,比如一旦ip更改,我们就得手动去更换外界访问项目的ip,这是很不方便的,所以最好设置为静态,可以参考这个链接去进行配置

https://blog.csdn.net/zhangtianpu/article/details/80911243
https://www.cnblogs.com/shuiwuchangxing/p/11306192.html

注意:其中关于ip,网关,还有子网掩码的设置
在这里插入图片描述

2.在linux上部署Nginx流程,这里以虚拟机为例,真实linux环境同

这里先复制一个虚拟机,作为部署Nginx的测试机
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

克隆好虚拟机之后,就开始导入我们Ngnix压缩包:操作步骤如下:

更改完静态ip之后,直接重启这台linux服务器,输入下面的命令修改ip并保存

vi /etc/sysconfig/network-scripts/ifcfg-ens33
在这里插入图片描述
在这里插入图片描述

这里使用secureCRT来连接linux服务器,进行文件上传
在这里插入图片描述
在这里插入图片描述

步骤:
1.进行安装:tar -zxvf nginx-1.6.2.tar.gz -C /usr/local
2.下载所需要的依赖库文件:
   yum install pcre -y
   yum install pcre-devel -y
   yum install zlib -y
   yum install zlib-devel -y
3.进行configure配置,查看是否报错
   cd nginx-1.6.2
   ./configure --prefix=/usr/local/nginx
4.编译安装:make && make install
5./usr/local/nginx目录下,可以看到如下4个目录
   conf配置文件,html网页文件,logs日志文件,sbin主要二进制程序
6.启动命令:/usr/local/nginx/sbin/nginx
  关闭命令:/usr/local/nginx/sbin/nginx -s stop
  重启命令:/usr/local/nginx/sbin/nginx -s reload
7.访问浏览器:http://192.168.122.133(看到欢迎页面说明没问题)(这个ip就是你linux的ip)

注意:如果出现这个错误:./configure: error: C compiler cc is not found
执行这个命令:yum -y install gcc gcc-c++ autoconf automake make

虚拟主机配置:cd 到conf中去设置虚拟主机

虚拟主机配置nginx虚拟主机配置:
server {
        listen       80;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }
}

在这里插入图片描述

日志文件设置

nginx访问日志放在log/host.access.log下,并且使用main格式(支持自定义格式)
对于main格式配置如下:
#日志文件输出格式这个位置相当于全局设置
#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
#                  '$status $body_bytes_sent "$http_referer" '
#                  '"$http_user_agent" "$http_x_forwarded_for"';

#access_log  logs/access.log  main;
查看日志内容命令:tail -n 100 -f access.log

在这里插入图片描述

location的语法设置

语法规则: location [=|~|~*|^~] /uri/ {}
====================================================================================================
= 开头表示精确匹配
^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。
~ 开头表示区分大小写的正则匹配
~*  开头表示不区分大小写的正则匹配
!~!~*分别为区分大小写不匹配及不区分大小写不匹配 的正则
/ 通用匹配,任何请求都会匹配到。
首先匹配 =,其次匹配^~, 其次是按文件中顺序的正则匹配,最后是交给 / 通用匹配。当有匹配成功时候,停止匹配,按当前匹配规则处理请求。
官方配置  :http://nginx.org/en/docs

实际应用配置:场景:因为前端资源放在nginx上,而后端资源则从nginx路由出去,所以我们需要自己来定义拦截的资源和不拦截直接进入后端访问资源的路径

#直接匹配网站根,通过域名访问网站首页比较频繁,使用这个会加速处理,官网如是说。
#这里是直接转发给后端应用服务器了,也可以是一个静态首页
# 第一个必选规则
location = / {
    proxy_pass http://tomcat:8080/index
}
 
# 第二个必选规则是处理静态文件请求,这是nginx作为http服务器的强项
# 有两种配置模式,目录匹配或后缀匹配,任选其一或搭配使用
location ^~ /static/ {
    root /webroot/static/;
}
location ~* \.(gif|jpg|jpeg|png|css|js|ico)$ {
    root /webroot/res/;
}
 
#第三个规则就是通用规则,用来转发动态请求到后端应用服务器
#非静态文件请求就默认是动态请求,自己根据实际把握
#毕竟目前的一些框架的流行,带.php,.jsp后缀的情况很少了
location / {
    proxy_pass http://tomcat:8080/
}

反向代理配置

proxy_pass http://ip:port;

注意:反向代理之后,获取客户端ip地址为nginx服务器地址,这里需要nginx进行forward,设置真实的ip地址:
#设置客户端真实ip地址
proxy_set_header X-real-ip $remote_addr;

proxy_pass http://ip:port;

注意:反向代理之后,获取客户端ip地址为nginx服务器地址,这里需要nginx进行forward,设置真实的ip地址:
#设置客户端真实ip地址
proxy_set_header X-real-ip $remote_addr;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值