nginx01——概念|安装并启动|域名解析|修改配置文件|springboot项目打包部署

目录

服务器

什么是nginx?

安装启动nginx

1、官网下载 nginx

2、解压缩到非中文目录

3、启动、停止nginx服务

4、浏览器访问nginx

域名解析

1、本地域名解析服务器

2、网络域名解析服务器

修改nginx配置文件

1、修改启动端口

2、部署前端项目

3、作为代理服务器

4、nginx作为负载均衡服务器

springboot项目打包部署

1、pom文件中引入 springboot-maven插件

2、使用mvn命令打包

3、运行jar包(在windows或者linux平台)

作业

1、在linux云平台上,部署springboot项目,并实现成功访问内部数据。(需要配置数据库连接)

2、在linux云平台上,部署nginx服务,实现静态资源访问。


服务器

硬件服务器:硬件服务器(linux、unix)

软件服务器:应用服务器、web服务器

应用服务器(可以部署java项目,也可以部署前端项目) tomcat

web服务器(部署前端项目 vue,html,css,js) nginx

ssm项目(打war包,放到tomcat中部署)

springboot项目(内置集成了tomcat容器,打jar包,运行是只需要jdk即可,java -jar jar包名称)

什么是nginx?

nginx可以作为web服务器,但更多的时候,我们把它作为网关,因为它具备网关必备的功能

  • WEB服务器(静态服务器)

  • 反向代理

  • 负载均衡

  • 动态路由

  • 请求过滤

安装启动nginx

1、官网下载 nginx

nginx: download

2、解压缩到非中文目录

3、启动、停止nginx服务

4、浏览器访问nginx

http://localhost:80

域名解析

http://域名:端口

1、本地域名解析服务器

域名解析文件:C:\Windows\System32\drivers\etc\hosts文件

127.0.0.1   localhost
127.0.0.1   www.yan9.com

更改后如果没有立即生效

cmd窗口中输入:

ipconfig /flushdns  让hosts文件立即生效

2、网络域名解析服务器

修改nginx配置文件

nginx.conf配置文件

1、修改启动端口

http {
    include       mime.types;
    default_type  application/octet-stream;
​
    #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;
​
    sendfile        on;
    #tcp_nopush     on;
​
    #keepalive_timeout  0;
    keepalive_timeout  65;
​
    #gzip  on;
​
    server {
        listen       81;
        server_name  localhost;
    }

2、部署前端项目

http {
    include       mime.types;
    default_type  application/octet-stream;
​
    #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;
​
    sendfile        on;
    #tcp_nopush     on;
​
    #keepalive_timeout  0;
    keepalive_timeout  65;
​
    #gzip  on;
​
    server {
        listen       80;
        server_name  localhost;
​
        #charset koi8-r;
​
        #access_log  logs/host.access.log  main;
​
        location / {
            root   html;
            index  index02.html index.htm;
        }
​

3、作为代理服务器

 server {
        listen       80;
        server_name  localhost;
​
        #charset koi8-r;
​
        #access_log  logs/host.access.log  main;
​
        #nginx作为代理服务器,进行反向代理配置(代理的是服务器)
        proxy_set_header X-Forwarded-Host $host; #把原Http请求的Header中的X-Forwarded-Host(主机地址)字段放到转发的请求中
        proxy_set_header X-Forwarded-Server $host; #把原Http请求的Header中的X-Forwarded-Server(主机名)字段放到转发的请求中
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #获取用户真实ip
​
        location / { #静态资源设置  
           proxy_pass http://127.0.0.1:8080;   #nginx代理访问的服务器访问地址(tomcat地址)
​
           proxy_connect_timeout 600; # 连接超时时间
           proxy_read_timeout 600; # 读取超时时间
        }
        
        
        #location / {
        #        root   html;
        #        index  index02.html index.htm;
        #    }

http://localhost:8080/grade/search 访问tomcat服务器

http://localhost/grade/search 访问nginx服务器

4、nginx作为负载均衡服务器

负载均衡策略: 轮询 、随机

权重:weight=1;

​
    #反向代理,负载均衡
    upstream mybatis03{
            server 127.0.0.1:8080 weight=2; # weight访问权重,简单理解:9次中有4次访问
            server 127.0.0.1:8081 weight=1;
    }
​
    server {
        listen       80;
        server_name  localhost;
​
        #charset koi8-r;
​
        #access_log  logs/host.access.log  main;
​
        #nginx作为代理服务器,进行反向代理配置(代理的是服务器)
        proxy_set_header X-Forwarded-Host $host; #把原Http请求的Header中的X-Forwarded-Host(主机地址)字段放到转发的请求中
        proxy_set_header X-Forwarded-Server $host; #把原Http请求的Header中的X-Forwarded-Server(主机名)字段放到转发的请求中
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; #获取用户真实ip
​
        location / { #静态资源设置  
           #proxy_pass http://127.0.0.1:8080;   #nginx代理访问的服务器访问地址(tomcat地址)
           proxy_pass http://mybatis03;
             
           proxy_connect_timeout 600; # 连接超时时间
           proxy_read_timeout 600; # 读取超时时间
        }

http://localhost/grade/search 多次发起请求测试

springboot项目打包部署

1、pom文件中引入 springboot-maven插件

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>${spring-boot.version}</version>
                <configuration>
                    <mainClass>com.hl.mybatis03.Mybatis03Application</mainClass>
                    <skip>false</skip>
                </configuration>
                <executions>
                    <execution>
                        <id>repackage</id>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

2、使用mvn命令打包

在pom.xml文件所在目录

mvn package  打包指令
mvn clean  清理已打包文件
mvn clean package   依次执行clean package

jar包默认存储在target目录下

3、运行jar包(在windows或者linux平台)

java -jar  jar包名称     默认以前台进程方式运行

nohup java -jar jar包名称  &     以后台进程方式运行

作业

1、在linux云平台上,部署springboot项目,并实现成功访问内部数据。(需要配置数据库连接)

 在连接上云平台的数据库里创建数据表

在springboot项目配置文件上修改url和mysql的用户和密码是linux的

springboot项目打jar包,存入linux文件夹里


 在xshell控制台上输入以下命令行启动项目

java -jar 项目jar包名

nohup java -jar jar包名称  &     

  打开防火墙

firewall-cmd  --permanent  --add-port=8080/tcp
 
systemctl restart firewalld

2、在linux云平台上,部署nginx服务,实现静态资源访问。

安装Nginx
Nginx和Tomcat一样都是服务器软件,不同的是Nginx是静态资源服务器,只能部署识别解析静态资源html、css、js,而Tomcat是web服务器,可以解析静态资源和动态资源。

目录结构

linux执行命令:

安装nginx的依赖库(不管有没有都执行一下)

yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel 

建立一个新文件夹存储nginx的conf、html、logs等

mkdir nginx

切换目录

cd /opt/nginx

上传nginx-1.10.0.tar.gz压缩包,解压缩到opt下或者nginx下都可以没有影响

tar -zxvf nginx-1.10.0.tar.gz

切换到nginx-1.28.0目录下开始下载配置文件  ./configure配置得在nginx-1.28.0目录下进行

cd nginx-1.28.0

把nginx安装包中的内容进行编译输出到/opt/nginx目录里,启动和关闭nginx命令放在/usr/bin/nginx里面添加到了path环境变量里面。所以可以在任何目录下面直接启动、关闭nginx

./configure --prefix=/opt/nginx --sbin-path=/usr/bin/nginx

 检查配置后的文件夹

make先编译检查有没有错误

make

安装

make install

 检查/opt/nginx目录下的文件

启动nginx

nginx

 停止nginx

nginx -s stop

找一个合适的vue项目 

在package.json下使用num run build打包vue项目,生成dist文件夹

将dist里面的文件夹和文件assets、favicon.ico、index.html上传到linux的/opt/nginx/html里

在云服务器部署80端口

防火墙开启80端口

 

测试浏览器是否可以访问vue项目   主机号:80

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值