为什么学Nginx?¶
如果你是刚接触Web服务器的小白,或者想学习如何搭建自己的网站,Nginx绝对是一个值得掌握的工具。它轻量高效、配置灵活,是目前最流行的Web服务器之一,也常用于反向代理、负载均衡等场景。本文将手把手带你从安装到启动,零基础也能轻松入门!
一、准备工作:确认你的操作系统¶
Nginx支持Windows、Linux(Ubuntu、CentOS等)系统。本文以 Ubuntu/Debian 和 CentOS/RHEL 为例,Windows安装可参考文末补充说明。
二、安装Nginx(Ubuntu/Debian系统)¶
1. 更新软件包列表¶
安装前先更新系统软件包,避免版本过时:
sudo apt update # 更新软件包列表
2. 安装Nginx¶
执行以下命令安装Nginx:
sudo apt install nginx -y # -y表示自动确认安装
3. 验证安装¶
安装完成后,检查Nginx版本确认是否成功:
nginx -v # 查看版本号(小写v是版本,大写V是详细信息)
输出类似 nginx version: nginx/1.21.6 即表示安装成功!
三、安装Nginx(CentOS/RHEL系统)¶
1. 安装Nginx¶
CentOS/RHEL默认仓库可能没有Nginx,需先安装EPEL源:
sudo yum install epel-release -y # 安装EPEL源(第三方软件仓库)
sudo yum install nginx -y # 安装Nginx
2. 启动Nginx并设置开机自启¶
sudo systemctl start nginx # 启动Nginx
sudo systemctl enable nginx # 设置开机自启(避免重启后失效)
四、启动与验证Nginx¶
1. 启动Nginx¶
无论Ubuntu还是CentOS,启动命令通用:
sudo systemctl start nginx # 启动
sudo systemctl status nginx # 查看状态(绿色active(running)表示正常)
2. 浏览器验证:访问本地服务器¶
打开浏览器,输入 http://localhost 或 http://127.0.0.1,如果看到 Nginx默认欢迎页面(蓝底白字“Welcome to nginx!”),说明启动成功!
五、Nginx配置文件初探(关键!)¶
Nginx的核心配置都在 /etc/nginx/ 目录下,初学者重点关注以下文件:
- nginx.conf:主配置文件,包含全局设置(如工作进程数)。
- sites-available/default:默认站点配置(Ubuntu/Debian)或 /etc/nginx/conf.d/default.conf(CentOS):定义网站监听端口、根目录等。
1. 查看默认配置¶
打开 default 配置文件(以Ubuntu为例):
sudo nano /etc/nginx/sites-available/default
重点关注以下内容(可理解为“Nginx接收请求的规则”):
server {
listen 80; # 监听80端口(HTTP默认端口)
server_name localhost; # 匹配本地域名
root /var/www/html; # 网站文件存放目录
index index.html index.htm; # 默认首页文件
}
简单来说:Nginx会监听所有来自 80端口 的请求,把请求指向 /var/www/html 目录下的 index.html 文件,并返回给用户。
六、Nginx常用命令(必记!)¶
| 命令 | 作用 |
|---|---|
sudo systemctl start nginx |
启动Nginx |
sudo systemctl stop nginx |
停止Nginx |
sudo systemctl restart nginx |
重启Nginx(配置修改后用) |
sudo systemctl status nginx |
查看Nginx运行状态 |
sudo nginx -t |
检查配置文件语法是否错误 |
sudo systemctl reload nginx |
重新加载配置(无需停止Nginx) |
七、常见问题排查(新手必备!)¶
1. 启动失败:端口被占用¶
如果执行 sudo systemctl start nginx 后状态显示“inactive”,可能是 80端口被其他程序占用(如Apache、Tomcat等)。
- 检查80端口占用:
sudo lsof -i :80 # 查看占用80端口的进程
sudo kill -9 进程ID # 终止占用进程(需替换进程ID)
2. 配置错误:修改后无法启动¶
修改配置文件后,必须先检查语法是否正确:
sudo nginx -t # 输出“nginx: configuration file /etc/nginx/nginx.conf test is successful”表示配置正确
若提示语法错误,根据错误提示修改对应配置文件(如 /etc/nginx/sites-available/default)。
八、小试牛刀:自定义Nginx首页¶
1. 进入网站根目录¶
Ubuntu/Debian:/var/www/html
CentOS/RHEL:/usr/share/nginx/html
2. 创建自定义页面¶
sudo nano /var/www/html/index.html # 创建首页文件
输入以下内容(可替换为任意HTML代码):
<!DOCTYPE html>
<html>
<body>
<h1>Hello, Nginx!</h1>
<p>这是我用Nginx搭建的第一个页面!</p>
</body>
</html>
保存后(Ctrl+O,回车,Ctrl+X退出)。
3. 刷新浏览器¶
再次访问 http://localhost,就能看到自定义的页面了!
九、Windows安装Nginx(可选)¶
- 从Nginx官网下载Windows版安装包(如
nginx-1.24.0.zip)。 - 解压到任意目录(如
C:\nginx),打开命令提示符(CMD):
cd C:\nginx
nginx.exe # 启动Nginx
nginx.exe -s stop # 停止Nginx
- 访问
http://localhost验证,操作与Linux类似。
总结¶
恭喜!你已完成Nginx的安装、启动和基础配置。从“安装到启动”看似简单,但已掌握了Web服务器的核心操作。下一步可以学习反向代理、虚拟主机等进阶功能。记住:多动手、多排查,Nginx的配置其实很灵活!
如果遇到问题,随时用 nginx -t 检查配置、用 systemctl status nginx 看状态,或在评论区留言提问~
补充:学习资源推荐
- Nginx官方文档:https://nginx.org/en/docs/
- 菜鸟教程Nginx配置示例:https://www.runoob.com/w3cnote/nginx-setup-intro.html