当前位置: 首页 > news >正文

Nginx快速安装-Linux-CentOS7

1.查看目录的可安装源数量

yum repolist

2.更新安装源数量

yum install epel-release -y

更新完成后,再用第1步的命令,查看安装源的数量会上升。

3.安装nginx

yum install nginx -y

4.开启nginx服务

systemctl start nginx 

5.查看nginx是否运行

ps -ef|grep nginx

6.设置nginx开机自动启动

systemctl enable nginx

7.安装网络管理查看工具

sudo yum install net-tools

8.查看nginx占用80端口的情况

netstat -lntup

9.显示本机IP地址

ip addr

例如:本机IP地址为:192.168.137.130

则在浏览器中输入  192.168.137.130:80

回车,显示下图界面,即为成功:

10.如果不显示上图的界面,最大可能是防火墙的问题。

可以临时开放端口:以开放 80 端口为例,使用以下命令。

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

重新加载防火墙规则:使配置生效。

sudo firewall-cmd --reload

也有可能是其它问题,例如:80端口被占用,具体可以自行用AI来搜索解决方案。

在 CentOS 系统中,使用 firewalld 防火墙永久开放 80 端口的步骤如下: 使用命令

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent

此命令会将 80 端口的 TCP 协议访问权限永久性地添加到 public 区域。

执行sudo firewall-cmd --reload重新加载防火墙配置,使新规则生效。

如果在使用firewall-cmd开放端口时不添加--permanent参数,那么开放的端口属于临时开放。

临时开放的端口在系统或防火墙服务重启后就会失效,没有明确固定的时长限制,如果系统和防火墙服务一直不重启,就会一直保持开放状态。

nginx的使用教程,可以看下面的视频链接:

【Nginx教程】2024版这绝对是你看过的最好的Nginx实战教程,整整2小时(建议收藏慢慢看)_哔哩哔哩_bilibili

11.配置nginx的nginx.conf文件

进入/etc/nginx的配置目录

cd /etc/nginx

使用pwd可以查看当前目录

备份默认的配置文件:

mv nginx.conf nginx.conf.bak

使用下面的命令查看最小配置:

grep -Ev '#|^$' nginx.conf.default
grep -Ev '#|^$' nginx.conf.default > nginx.conf

使用上面的命令,生成nginx.conf文件。

为了开启目录浏览功能,配置如下:

worker_processes  1;
events {worker_connections  1024;
}
http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       80;server_name  localhost;location /test {#设置要映射的对应的Linux下的test所在的目录root /home;# 开启目录浏览功能autoindex on;#显示文件大小的时候带单位autoindex_exact_size off; # 设置目录列表格式为 HTMLautoindex_format html;# 设置字符编码charset utf-8;# 开启基本认证auth_basic "Restricted Access";# 指定密码文件路径auth_basic_user_file /etc/nginx/.htpasswd;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   html;}}
}

目录为/home/test

修改目录权限

sudo chmod -R 755 /home/test
sudo chown -R nginx:nginx /home/test  # 如果 Nginx 以 nginx 用户运行

确认 /home/test 目录权限和所有权

# 查看权限和所有权
ls -ld /home/test
# 重新设置权限
sudo chmod -R 755 /home/test
# 重新设置所有权
sudo chown -R nginx:nginx /home/test

检查 SELinux 限制

SELinux 可能会在文件系统权限正常的情况下,基于其策略限制 Nginx 访问 /home/test 目录。可以通过以下操作来排查和处理: 临时关闭 SELinux 进行测试

sudo setenforce 0

然后尝试访问目录,如果可以访问,说明是 SELinux 策略的问题。之后可以通过创建自定义策略来允许 Nginx 访问该目录。

创建自定义 SELinux 策略

CentOS7下,安装 policycoreutils-python-utils 或其替代包

sudo yum install policycoreutils-python

安装完成后,再次尝试执行生成 SELinux 策略模块的命令:

sudo ausearch -c 'nginx' --raw | audit2allow -M my-nginx

加载 SELinux 策略模块

sudo semodule -i my-nginx.pp

重启 Nginx 服务

sudo systemctl restart nginx

恢复 SELinux 到强制模式(如果之前临时关闭)

sudo setenforce 1

测试访问

尝试再次访问之前配置的 Nginx 目录(例如 http://your_server_ip/test ),检查是否可以正常浏览目录内容。

检查日志

如果访问仍然存在问题,需要查看相关日志来进一步排查。

主要查看两个日志文件: Nginx 错误日志:记录了 Nginx 服务运行过程中的错误信息。

使用以下命令查看最新的日志内容:

sudo tail -n 20 /var/log/nginx/error.log

SELinux 审计日志:记录了 SELinux 相关的审计信息,有助于发现 SELinux 策略是否仍然存在限制。

使用以下命令查看与 nginx 相关的审计记录:

sudo ausearch -c 'nginx'

12.重启nginx

 检查配置文件语法

sudo nginx -t

重新加载 Nginx 配置

sudo nginx -s reload

重启 Nginx 服务

sudo systemctl restart nginx

验证 Nginx 服务状态

sudo systemctl status nginx


http://www.mrgr.cn/news/93708.html

相关文章:

  • 美杜莎:带多个解码头的简单LLM推理加速框架
  • UI自动化测试Selenium安装教程(1)
  • 【Linux内核系列】:深入解析输出以及输入重定向
  • selenium库
  • TI毫米波雷达开发 —— 串口输出数据解析
  • 09第三方库的使用
  • VBA 数据库同一表的当前行与其他行的主键重复判断实现方案
  • 迅投miniQMT量化交易之【网格交易】的实现(七)——__init__()方法
  • 【网络】HTTP协议、HTTPS协议
  • 【linux网络编程】套接字编程API详细介绍
  • 08动态库与静态库
  • element-plus中table组件的使用
  • 算法进阶——双指针
  • c语言笔记 数组进阶题目的理解
  • 渗透测试之利用sql拿shell(附完整流程+防御方案)【上】
  • OpenManus:开源版Manus的快速安装及使用「喂饭教程」
  • 数据结构--【顺序表与链表】笔记
  • python中如何正确进行浮点数的大小比较
  • 【让POSTGRESQL支持MS SQLSERVER的 extension】 Babelfish for PostgreSQL介绍及源码安装
  • 数据库原理6