在华为云EulerOS 2.0上安装和配置Nginx的步骤如下:
一、安装Nginx
方法1:通过YUM安装(推荐)
# 1. 更新系统包
sudo yum update -y
# 2. 添加EPEL仓库(如果需要)
sudo yum install epel-release -y
# 3. 安装Nginx
sudo yum install nginx -y
# 4. 验证安装
nginx -v
方法2:源码编译安装(获取最新版本)
# 1. 安装编译依赖
sudo yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel
# 2. 下载Nginx源码
cd /usr/local/src
sudo wget http://nginx.org/download/nginx-1.24.0.tar.gz
sudo tar -zxvf nginx-1.24.0.tar.gz
cd nginx-1.24.0
# 3. 编译安装
sudo ./configure --prefix=/usr/local/nginx
--with-http_ssl_module
--with-http_stub_status_module
--with-http_gzip_static_module
--with-http_v2_module
sudo make && sudo make install
# 4. 创建软链接
sudo ln -s /usr/local/nginx/sbin/nginx /usr/sbin/nginx
二、配置Nginx
1. 基本配置
# 查看配置文件位置
nginx -t
# 主要配置文件
/etc/nginx/nginx.conf
/etc/nginx/conf.d/
2. 创建虚拟主机配置
# 创建网站配置文件
sudo vi /etc/nginx/conf.d/yourdomain.conf
示例配置:
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
# 网站根目录
root /var/www/html;
index index.html index.htm;
# 日志配置
access_log /var/log/nginx/yourdomain.access.log;
error_log /var/log/nginx/yourdomain.error.log;
location / {
try_files $uri $uri/ =404;
}
# 静态文件缓存
location ~* .(jpg|jpeg|png|gif|ico|css|js)$ {
expires 30d;
add_header Cache-Control "public, immutable";
}
}
3. SSL配置(可选)
# 安装Certbot(Let's Encrypt)
sudo yum install certbot python3-certbot-nginx -y
# 获取SSL证书
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
三、启动和管理Nginx
1. 启动服务
# 启动Nginx
sudo systemctl start nginx
# 设置开机自启
sudo systemctl enable nginx
# 查看状态
sudo systemctl status nginx
2. 常用命令
# 测试配置文件
sudo nginx -t
# 重新加载配置(不中断服务)
sudo nginx -s reload
# 停止服务
sudo systemctl stop nginx
# 重启服务
sudo systemctl restart nginx
四、防火墙配置
# 开放80和443端口
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
# 或者直接开放端口
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --reload
五、安全优化建议
-
隐藏Nginx版本信息
http { server_tokens off; } -
限制请求大小
http { client_max_body_size 10m; } -
创建Nginx用户
sudo useradd -r -s /sbin/nologin nginx
六、故障排查
# 查看错误日志
sudo tail -f /var/log/nginx/error.log
# 查看访问日志
sudo tail -f /var/log/nginx/access.log
# 检查端口监听
sudo netstat -tlnp | grep nginx
注意事项
- EulerOS 2.0基于CentOS,大部分命令与CentOS/RHEL相同
- 确保SELinux配置正确,或临时禁用测试
- 配置文件修改后务必执行
nginx -t测试语法 - 建议定期更新Nginx以获取安全补丁
按照以上步骤,您应该能在华为云EulerOS 2.0上成功安装和配置Nginx。
CLOUD技术笔记