zoukankan      html  css  js  c++  java
  • Centos7下的Nginx的安装与配置

    Centos7下的Nginx的安装与配置

    Yum安装

    新安装的Centos系统中,直接使用yum安装会提示没有可用的软件包。原因是nginx位于第三方的yum源里面,而不在centos官方yum源里面.需要安装epel源。EPEL (Extra Packages for Enterprise Linux)是基于Fedora的一个项目,为“红帽系”的操作系统提供额外的软件包,适用于RHEL、CentOS等系统

    安装EPELsudo yum install epel-release

    更新一下源sudo yum update

    安装Nginx: sudo yum -y install nginx

    安装完成查看一下版本nginx -v

    防火墙开启端口sudo firewall-cmd --zone=public --permanent --add-service=http

    image-20200625104543027

    nginx的常用命令

    sudo systemctl enable nginx # 设置开机启动 
    sudo service nginx start # 启动 nginx 服务
    sudo service nginx stop # 停止 nginx 服务
    sudo service nginx restart # 重启 nginx 服务
    sudo service nginx reload # 重新加载配置,一般是在修改过 nginx 配置文件时使用。
    

    Nginx的配置文件和常用目录

    #Nginx的全局配置文件
    /etc/nginx/nginx.conf
    #自定义配置文件目录
    /etc/nginx/conf.d
    #默认项目文件路径
    /usr/share/nginx/html/
    #日志文件目录
    /var/log/nginx/
    #安装文件
    /etc/nginx
    

    源码安装

    安装依赖包

    yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim gcc-c++
    

    下载源码

    下载目录地址选择自己要下载的安装包,使用wget下载

    wget http://nginx.org/download/nginx-1.9.1.tar.gz
    

    解压编译

    解压: tar -xzvfnginx-1.9.1.tar.gz

    配置虚拟目录

    • 在Nginx配置目录下,创建一个”vhost”目录。本例假设Nginx是默认安装,配置目录在”/etc/nginx”
    $ sudo mkdir /etc/nginx/vhost
    
    • 创建siteA的配置文件
    $ sudo vi /etc/nginx/vhost/vhost_siteA.conf
    
    • 输入以下配置信息
    server {
        listen       80;                        # 监听端口
        server_name www.siteA.com siteA.com;    # 站点域名
        root  /home/user/www/blog;              # 站点根目录
        index index.html index.htm index.php;   # 默认导航页
     
        location / {
            # WordPress固定链接URL重写
            if (!-e $request_filename) {
                rewrite (.*) /index.php;
            }
        }
     
        # PHP配置
        location ~ .php$ {
            fastcgi_pass unix:/var/run/php5-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
        }
    }
    
    • 同siteA一样创建siteB的配置文件,两者仅有的不同是”server_name”和”root”目录
    $ sudo vi /etc/nginx/vhost/vhost_siteB.conf
    
    server {
        ...
        server_name www.siteB.com siteB.com;    # 站点域名
        root  /home/user/www/forum;             # 站点根目录
        ...
    }
    
    • 打开nginx.conf文件
    sudo vi /etc/nginx/nginx.conf
    
    • 将虚拟目录的配置文件加入到”http {}”部分的末尾
    http {
        ...
        include /etc/nginx/vhost/*.conf;
    }
    
    • 重启Nginx服务
    $ sudo service nginx restart
    
    • 现在访问www.siteA.com和www.siteB.com,你将发现浏览器会打开不同的站点
  • 相关阅读:
    react-webpack-express
    React总结和遇到的坑
    vue+node+mongodb实现的功能
    webpack整体了解
    webpack踩坑
    深入了解MongoDB
    实现pdf word在线浏览和下载
    node实现爬虫
    火客声音分析
    抖音二婷衣橱分析
  • 原文地址:https://www.cnblogs.com/cuianbing/p/13347137.html
Copyright © 2011-2022 走看看