美文网首页
CVM + Nginx 搭建记录

CVM + Nginx 搭建记录

作者: 咩咩的毛球 | 来源:发表于2019-06-20 19:52 被阅读0次
    1. 学生优惠
      10 元*6 月 + 域名
      1C + 2G + ubuntu 16.04
    2. CVM + 域名 + CDN
      配置 CDN 时,域名要解析到 cname
    3. 问题:修改了 /var/www/html下的 index.html,现在按 ip 访问能展示这个页面,按域名访问还是 nginx 页面。
    4. 搭建流程和结果
      安装: $ apt install nginx
      启动:$ nginx
      重启:$ nginx -s reload
      访问域名看到:
      1.png 访问公网 IP:
      2.png
    1. 配置文件修改

      1. 如果启动了防火墙,则添加规则,允许nginx http:
        sudo ufw allow "Nginx HTTP"
        确认ufw状态:
        sudo ufw status
        ifconfig获取IP地址,curl看是否调出Nginx欢迎页面
      • 查看配置信息:$ nginx -t 返回配置信息的目录
        nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
        nginx: configuration file /etc/nginx/nginx.conf test is successful

      • 打开上面的文件:$ cd /etc/nginx
        $ cd sites-enabled 进入此文件夹
        $ vim default 编辑 default 文件
        将 root /var/www/html; 改为自己的域名,如 root /root/my.com;
        nginx默认启用一个nginx配置,配置为从目录/var/www/html中提供文档。

      • 若网站的文件放在了root目录下,或者访问出现了403错误,还要做下面一步:
        进入/etc/nginx,编辑nginx.conf文件:$ vi nginx.conf
        把第一行 user www-data 改成 user root

      • 改完配置后重启:$ nginx -s reload
        至此http服务器就跑起来了

    2. 一些依赖库

      • 安装 gcc g++ 依赖
        $ apt-get install build-essential
        $ apt-get install libtool

      • 安装 pcre 依赖库 http://www.pcre.org
        $ apt-get install libpcre3 libpcre3-dev

      • 安装 zlib依赖库 http://www.zlib.net
        $ apt-get install zlib1g-dev

      • 安装 ssl依赖库
        $ apt-get install openssl

    3. nginx 常用操作

      • 查看 nginx 进程 $ ps -ef | grep nginx
      • 查看 nginx 状态 $ systemctl status nginx
      • 启动 $ systemctl start nginx
      • 停止 $ systemctl stop nginx
      • 重启 $ systemctl restart nginx
      • 只是进行配置更改,可在不影响运行的情况下重新载入Nginx配置文件:systemctl reload nginx
      • 禁止开机启动:$ sudo systemctl disable nginx
      • 恢复开机启动:$ sudo systemctl enable nginx
    1. 遇到的问题

      问题一
      • 错误:nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed
      • 问题描述:
        $ /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
        $ nginx.service: Failed at step EXEC spawning /usr/local/nginx/conf/nginx: No such file or director
        

      使用nginx -c的参数指定nginx.conf文件的位置,提示:nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)

      • 问题原因:
        上述命令指定了/etc/nginx/nginx.conf作为nginx的配置文件,不过这个文件存放目录并不是这里,所以执行出错

      • 解决方法:
        step1: 查看自己的 nginx.conf 所在位置
        (/usr/local/nginx/conf/nginx.conf)
        step2:
        $ vi /lib/systemd/system/nginx.service
        修改 /lib/systemd/system/nginx.service,把 /etc/nginx/nginx 部分都改为 /usr/local/nginx/conf/nginx
        然后执行:
        $ systemctl daemon-reload
        $ systemctl start nginx
        其中,ExecStartPre是systemd启动服务前预执行的命令,通常用来检查配置或者设置环境变量

      问题二
      • 和上述相似的配置文件冲突,nginx 启动不了
      • apt get install 了一个 nginx,又自行安装了一个,两者冲突
      • 卸载干净,或者重装
    1. 备注
    1. 设置 nginx

    没有意义:
    /var/www/example.com/html/index.html

    sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

    /etc/nginx/sites-enabled$ sudo vi example.com
    server {
    listen 80;
    listen [::]:80;

        root /var/www/example.com/html;
        index index.html index.htm index.nginx-debian.html;
    
        server_name example.com www.example.com;
    
        location / {
                try_files $uri $uri/ =404;
        }
    

    }

    相关文章

      网友评论

          本文标题:CVM + Nginx 搭建记录

          本文链接:https://www.haomeiwen.com/subject/vbmjqctx.html