nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点

目录

安装nginx

bash 复制代码
dnf  install -y nginx

配置nginx

bash 复制代码
whereis nginx
bash 复制代码
cd /etc/nginx
ll
bash 复制代码
cd conf.d
touch vhost.conf
vim vhost.conf 

命令模式下输入:set nu:set number可以显示行号

复制如下内容:

bash 复制代码
server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;
        root    /mirror; #修改根目录
        location / {
            #root  hmtl;
            #index  index.html index.htm;
            allow all;
            autoindex on;#开启目录浏览
            autoindex_exact_size off;
            autoindex_localtime on;
            charset utf-8,gbk;
        }
        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /.html {
            root   html;
        }
}

测试配置文件,按理说这里新增的server部队与主配置文件nginx.conf是有冲突的,但实际测试不冲突,不需要将主配置文件中的server部分注释掉(可以理解为优先级)。

  • 测试配置文件
bash 复制代码
nginx -t
  • 未启动-开启nginx
bash 复制代码
systemctl enable nginx #设置开机启动
systemctl start nginx

  • 已启动-开启nginx
bash 复制代码
systemctl enable nginx #设置开机启动
systemctl restart nginx

至此:访问http://ip 是无法访问的

其它权限配置

  • 防火墙配置
bash 复制代码
firewall-cmd --add-service=http --permanent
firewall-cmd --reload

至此:访问http://ip 是可以访问的,但返回的是nginx 403(如果是404可能是主目录不存在)

按3个方向排查:一是Selinux; 二是目录权限; 三是文件所有者

  1. Selinux
    修改SELinux的状态(代码替换)
bash 复制代码
setenforce 0 #临时关闭selinux
sed -i.bak 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

或者(手动修改)

bash 复制代码
setenforce 0 #临时关闭selinux
vim /etc/sysconfig/selinux

状态分为以下三种:

SELINUX=enforcing #selinux开启,级别为强制(华为openEuler系统选择服务server方式安装时默认为开启)

SELINUX=permissive #selinux开启,级别为警告

SELINUX=disabled #selinux关闭

在Linux系统中永久关闭SELinux的方法是修改SELINUX的配置文件,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出并重启系

  1. 目录权限(R必须大写)
bash 复制代码
chown -R nginx:nginx /mirror
  1. 文件所有者
bash 复制代码
chmod -R 755 /mirror

至此:软件源repo站点成功搭建

相关推荐
AlfredZhao2 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
戴为沐3 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
用户805533698034 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297914 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux
Web3探索者6 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo6 天前
Linux系统中网线与USB网络共享冲突
linux
Avan_菜菜7 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
Sokach10157 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
AlfredZhao8 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone