前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >快速上手Linux环境下Nginx的安装和配置

快速上手Linux环境下Nginx的安装和配置

原创
作者头像
Lion Long
发布2024-12-22 21:44:11
发布2024-12-22 21:44:11
39800
代码可运行
举报
文章被收录于专栏:后端开发技术
运行总次数:0
代码可运行

一、准备工作

操作系统:Ubuntu 16.04 前提:开启root权限;如果没有,则在操作的时候需要使用sudo去获取一些执行权限。

安装编译器:

代码语言:javascript
代码运行次数:0
复制
sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install build-essential
sudo apt-get install libtool

二、Nginx的安装

安装之前需要提前准备好Nginx的必备软件/库。

2.1、安装PCRE库

这里安装8.44版本。

代码语言:javascript
代码运行次数:0
复制
wget https://sourceforge.net/projects/pcre/files/pcre/8.44/pcre-8.44.tar.gz
tar -zxvf pcre-8.44.tar.gz
cd pcre-8.44/
./configure
make
sudo make install

2.2、安装zlib库

代码语言:javascript
代码运行次数:0
复制
wget https://nchc.dl.sourceforge.net/project/libpng/zlib/1.2.11/zlib-1.2.11.tar.gz
tar -zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11/
./configure
make
sudo make install

2.3、安装OpenSSL开发库

代码语言:javascript
代码运行次数:0
复制
wget https://www.openssl.org/source/openssl-1.1.1g.tar.gz
tar -zxvf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g/
./config
make
sudo make install

2.4、安装Nginx

这里安装1.16版本。

代码语言:javascript
代码运行次数:0
复制
wget http://nginx.org/download/nginx-1.16.1.tar.gz
tar -zxvf nginx-1.16.1.tar.gz
cd nginx-1.16.1/
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --withhttp_ssl_module --with-http_realip_module --with-http_v2_module --withopenssl=../openssl-1.1.1g
make
make install

三、Nginx的启动

默认情况下,Nginx被安装在目录/usr/local/nginx中。

代码语言:javascript
代码运行次数:0
复制
cd usr/local/nginx
ls

显示:

代码语言:javascript
代码运行次数:0
复制
conf  html  logs  sbin

其中Nginx的配置文件存放于conf/nginx.conf,bin文件是位于sbin目录下的nginx文件,logs是存放的启动日志、错误日志、运行日志等。

(1)默认方式启动Nginx服务器(需要sudo权限):

代码语言:javascript
代码运行次数:0
复制
sudo /usr/local/nginx/sbin/nginx

这时,会自动读取配置文件:/usr/local/nginx/conf/nginx.conf

打开浏览器访问此机器的IP,如果浏览器出现 Welcome to nginx! 则表示 Nginx 已经安装并运行成功:

显示结果
显示结果

(2)查看nginx进程:

代码语言:javascript
代码运行次数:0
复制
sudo ps -ef|grep nginx

显示:

代码语言:javascript
代码运行次数:0
复制
root      35768      1  0 11:12 ?        00:00:00 nginx: master process /usr/local/nginx/sbin/nginx
nobody    35769  35768  0 11:12 ?        00:00:00 nginx: worker process
fly       35771   2396  0 11:12 pts/1    00:00:00 grep --color=auto nginx

注意,grep --color=auto nginx不是代表nginx启动,前面两行才是。 (3)指定配置文件启动服务器:

代码语言:javascript
代码运行次数:0
复制
sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

(4)测试配置信息:

代码语言:javascript
代码运行次数:0
复制
sudo /usr/local/nginx/sbin/nginx -t

提示:

代码语言:javascript
代码运行次数:0
复制
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

(5)关于nginx启动出现报错 比如:

代码语言:javascript
代码运行次数:0
复制
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()

这可能是nginx已经启动了,也可能是80端口被占用了。 可以使用lsof命令查询端口状态:

代码语言:javascript
代码运行次数:0
复制
sudo lsof -i:80
代码语言:javascript
代码运行次数:0
复制
COMMAND   PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   35768   root    6u  IPv4  62470      0t0  TCP *:http (LISTEN)
nginx   35769 nobody    6u  IPv4  62470      0t0  TCP *:http (LISTEN)

如果是其他进程占用,使用kill命令杀死进程就好,比如

代码语言:javascript
代码运行次数:0
复制
kill -9 35768
kill -9 35769

3.1、error.log查看Nginx错误信息

当项目出现报错(比如上传文件),可以通过tail命令查看error.log文件排除问题。

代码语言:javascript
代码运行次数:0
复制
sudo tail -f /usr/local/nginx/logs/error.log

3.2、重启nginx

代码语言:javascript
代码运行次数:0
复制
# 停 止:
sudo /usr/local/nginx/sbin/nginx -s stop
# 启动:
sudo /usr/local/nginx/sbin/nginx

四、总结

本文提供了一个简洁明了的指南,帮助读者快速上手在Linux环境下安装和配置Nginx。通过以下几个步骤,您将能够轻松地设置一个高效的Web服务器:

  1. 准备环境:介绍了在Linux系统上进行Nginx安装和配置所需的基本环境要求,如操作系统版本和依赖项。
  2. 下载和安装Nginx:详细说明了如何从官方网站下载Nginx,并提供了适用于不同Linux发行版的安装指南。
  3. 配置Nginx:介绍了Nginx的主要配置文件和目录结构,并提供了一些常见的配置示例,如设置虚拟主机、启用HTTPS等。
  4. 启动和测试Nginx:展示了如何启动Nginx服务,并通过访问本地主机或浏览器来验证安装和配置是否成功。
  5. 常见问题和故障排除:列举了一些常见的问题和故障,并提供了解决方法和调试技巧。

通过本文,读者将能够快速掌握在Linux环境下安装和配置Nginx的关键步骤,为搭建高性能的Web服务器打下坚实的基础。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、准备工作
  • 二、Nginx的安装
    • 2.1、安装PCRE库
    • 2.2、安装zlib库
    • 2.3、安装OpenSSL开发库
    • 2.4、安装Nginx
  • 三、Nginx的启动
    • 3.1、error.log查看Nginx错误信息
    • 3.2、重启nginx
  • 四、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档