Linux部署Nginx详细图文教程

2024-03-01 0 518
目录
  • 一、Nginx 下载
  • 二、部署步骤
  • 三、演示修改 Nginx 配置,修改端口号
  • 四、使用 Nginx 转发访问后端服务
  • 五、Nginx 常用命令
  • 总结

一、Nginx 下载

从官网中下载 nginx 压缩包到本地(http://nginx.org/en/download.html)

Linux部署Nginx详细图文教程

二、部署步骤

  • 在 /usr/local 目录下新建 nginx 文件夹

[root@iZwz9cwntagbp2m20emj0qZ local]# mkdir nginx
[root@iZwz9cwntagbp2m20emj0qZ local]# ls
aegis app bin etc games include lib lib64 libexec nginx sbin share src

  • 将 nginx 压缩包使用 SFTP 上传到 Linux 系统的 /usr/local/nginx 目录下

[root@iZwz9cwntagbp2m20emj0qZ nginx]# ls
nginx-1.22.1.tar.gz

  • 解压 nginx-1.22.1.tar.gz

[root@iZwz9cwntagbp2m20emj0qZ nginx]# tar -zxvf nginx-1.22.1.tar.gz
nginx-1.22.1/
nginx-1.22.1/auto/
……
[root@iZwz9cwntagbp2m20emj0qZ nginx]# ls
nginx-1.22.1 nginx-1.22.1.tar.gz

  • 进入 nginx,找到 configure

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/nginx-1.22.1/
[root@iZwz9cwntagbp2m20emj0qZ nginx-1.22.1]# ls
auto CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src

  • 运行 configure,命令 ./configure

[root@iZwz9cwntagbp2m20emj0qZ nginx-1.22.1]# ./configure

①如果报错执行yum -y install pcre-devel // 安装pore

②如果再次报错执行 yum -y install openssl openssl-devel //安装openssl

  • 编译 nginx 文件

[root@iZwz9cwntagbp2m20emj0qZ nginx-1.22.1]# make
[root@iZwz9cwntagbp2m20emj0qZ nginx-1.22.1]# make install

  • 检查是否安装成功

[root@iZwz9cwntagbp2m20emj0qZ nginx-1.22.1]# whereis nginx
nginx: /usr/local/nginx

  • 找到 ngingx 的 sbin 目录

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/
[root@iZwz9cwntagbp2m20emj0qZ nginx]# ll
total 1092
drwx—— 2 nobody root 4096 Mar 14 11:39 client_body_temp
drwxr-xr-x 2 root root 4096 Mar 14 14:31 conf
drwx—— 2 nobody root 4096 Mar 14 11:39 fastcgi_temp
drwxr-xr-x 2 root root 4096 Mar 14 11:37 html
drwxr-xr-x 2 root root 4096 Mar 14 14:37 logs
drwxr-xr-x 9 1001 1001 4096 Mar 14 11:33 nginx-1.22.1
-rw-r–r– 1 root root 1073948 Mar 14 11:19 nginx-1.22.1.tar.gz
drwx—— 2 nobody root 4096 Mar 14 11:39 proxy_temp
drwxr-xr-x 2 root root 4096 Mar 14 11:37 sbin
drwx—— 2 nobody root 4096 Mar 14 11:39 scgi_temp
drwx—— 2 nobody root 4096 Mar 14 11:39 uwsgi_temp
[root@iZwz9cwntagbp2m20emj0qZ nginx]# cd sbin/

  • 启动 nginx

[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx

  • 访问测试

    Linux部署Nginx详细图文教程

三、演示修改 Nginx 配置,修改端口号

  • 找到 /conf 目录下的 nginx.conf 配置文件

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/nginx-1.22.1/conf/
[root@iZwz9cwntagbp2m20emj0qZ conf]# ll
total 40
-rw-r–r– 1 1001 1001 1077 Oct 19 16:02 fastcgi.conf
-rw-r–r– 1 1001 1001 1007 Oct 19 16:02 fastcgi_params
-rw-r–r– 1 1001 1001 2837 Oct 19 16:02 koi-utf
-rw-r–r– 1 1001 1001 2223 Oct 19 16:02 koi-win
-rw-r–r– 1 1001 1001 5349 Oct 19 16:02 mime.types
-rw-r–r– 1 1001 1001 2656 Oct 19 16:02 nginx.conf
-rw-r–r– 1 1001 1001 636 Oct 19 16:02 scgi_params
-rw-r–r– 1 1001 1001 664 Oct 19 16:02 uwsgi_params
-rw-r–r– 1 1001 1001 3610 Oct 19 16:02 win-utf

  • 使用 vim 编辑 nginx.conf 文件

[root@iZwz9cwntagbp2m20emj0qZ conf]# vim nginx.conf

修改监听端口为666

server {
listen 666;
server_name localhost;
}

保存并退出:esc -> shift + : -> wq

3. 重新加载 nginx.conf 配置文件

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ll
total 3804
-rwxr-xr-x 1 root root 3892016 Mar 14 11:37 nginx
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx -s reload

  • 测试端口修改是否成功

    Linux部署Nginx详细图文教程

四、使用 Nginx 转发访问后端服务

  • 启动 spring boot 项目

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/app/
[root@iZwz9cwntagbp2m20emj0qZ app]# ll
total 16160
-rw-r–r– 1 root root 16546230 Mar 14 14:23 springboot-0.0.1-SNAPSHOT.jar
[root@iZwz9cwntagbp2m20emj0qZ app]# java -jar springboot-0.0.1-SNAPSHOT.jar

. ____ _ __ _ _
/\\\\ / ___\’_ __ _ _(_)_ __ __ _ \\ \\ \\ \\
( ( )\\___ | \’_ | \’_| | \’_ \\/ _` | \\ \\ \\ \\
\\\\/ ___)| |_)| | | | | || (_| | ) ) ) )
\’ |____| .__|_| |_|_| |_\\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.3.6.RELEASE)

2023-03-14 20:05:22.440 INFO 30885 — [ main] c.json.springboot.SpringbootApplication : Starting SpringbootApplication v0.0.1-SNAPSHOT on iZwz9cwntagbp2m20emj0qZ with PID 30885 (/usr/local/app/springboot-0.0.1-SNAPSHOT.jar
started by root in /usr/local/app)
2023-03-14 20:05:22.454 INFO 30885 — [ main] c.json.springboot.SpringbootApplication : No active profile set, falling back to default profiles: default
2023-03-14 20:05:24.718 INFO 30885 — [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 666 (http)
2023-03-14 20:05:24.747 INFO 30885 — [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2023-03-14 20:05:24.748 INFO 30885 — [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.39]
2023-03-14 20:05:24.891 INFO 30885 — [ main] o.a.c.c.C.[Tomcat].[localhost].[/json] : Initializing Spring embedded WebApplicationContext
2023-03-14 20:05:24.892 INFO 30885 — [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2320 ms
2023-03-14 20:05:25.793 INFO 30885 — [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService \’applicationTaskExecutor\’
2023-03-14 20:05:26.188 INFO 30885 — [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 666 (http) with context path \’/json\’
2023-03-14 20:05:26.219 INFO 30885 — [ main] c.json.springboot.SpringbootApplication : Started SpringbootApplication in 4.683 seconds (JVM running for 5.522)
2023-03-14 20:06:06.170 INFO 30885 — [-nio-666-exec-4] o.a.c.c.C.[Tomcat].[localhost].[/json] : Initializing Spring DispatcherServlet \’dispatcherServlet\’
2023-03-14 20:06:06.170 INFO 30885 — [-nio-666-exec-4] o.s.web.servlet.DispatcherServlet : Initializing Servlet \’dispatcherServlet\’
2023-03-14 20:06:06.187 INFO 30885 — [-nio-666-exec-4] o.s.web.servlet.DispatcherServlet : Completed initialization in 17 ms

  • 在浏览器中测试访问接口

    Linux部署Nginx详细图文教程

  • 在 nginx.conf 文件中配置 location

[root@iZwz9cwntagbp2m20emj0qZ ~]# cd /
[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/nginx-1.22.1/conf/
[root@iZwz9cwntagbp2m20emj0qZ conf]# vim nginx.conf

server {
listen 80;
server_name localhost;

location /json/ {
proxy_pass http://112.74.190.252:666/json/;
}
}

  • 重新加载 nginx.conf 配置文件

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ll
total 3804
-rwxr-xr-x 1 root root 3892016 Mar 14 11:37 nginx
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx -s reload

  • 浏览器中测试(使用 Nginx 监听的 80 端口访问)

    Linux部署Nginx详细图文教程

五、Nginx 常用命令

  • 查看 nginx 位置

[root@iZwz9cwntagbp2m20emj0qZ /]# whereis nginx
nginx: /usr/local/nginx

  • 启动 nginx

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx

  • 停止 nginx

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx -s stop

  • 安全退出 nginx

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx -s quit

  • 重新加载配置文件

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx -s reload

(注意:Nginx 启动、停止、退出、重新加载命令都需要在 sbin 目录下执行)

  • 查看 nginx 进程

[root@iZwz9cwntagbp2m20emj0qZ /]# cd usr/local/nginx/sbin/
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ./nginx
[root@iZwz9cwntagbp2m20emj0qZ sbin]# ps aux|grep nginx
root 30537 0.0 0.0 20576 624 ? Ss 16:41 0:00 nginx: master process ./nginx
nobody 30538 0.0 0.0 21020 1320 ? S 16:41 0:00 nginx: worker process
root 30542 0.0 0.0 112812 980 pts/0 S+ 16:41 0:00 grep –color=auto nginx

总结

到此这篇关于Linux部署Nginx的文章就介绍到这了,更多相关Linux部署Nginx内容请搜索悠久资源以前的文章或继续浏览下面的相关文章希望大家以后多多支持悠久资源!

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悠久资源 Nginx服务器 Linux部署Nginx详细图文教程 https://www.u-9.cn/server/nginx/174720.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务