阿里云后台部署全过程-4-Nginx配置

本文已收录至我的个人网站:阿里云后台部署全过程-4-Nginx配置

Nginx是高性能的HTTP和反向代理web服务器,Nginx处理静态资源的能力很强,支持高并发和负载均衡,成本低且稳定性好,是主流服务器软件之一。

我们这里主要使用它的静态处理能力,和反向代理能力(将动态请求交给我们自己的Python服务器)。

我们在第2节的时候,已经把Nginx安装好了,所以下面直接进行配置。

1、在对应路径,创建一个配置文件,然后写入相应内容。命令:touch /etc/nginx/sites-available/nginx.conf

server {
    listen      80; # 监听80端口

    root       /srv/awesome/www;
    access_log /srv/awesome/log/access_log;
    error_log  /srv/awesome/log/error_log;

    # server_name awesome.liaoxuefeng.com; # 配置域名

    # 处理静态文件/favicon.ico:
    location /favicon.ico {
        root /srv/awesome/www;
    }

    # 处理静态资源:
    location ~ ^\/static\/.*$ {
        root /srv/awesome/www;
    }

    # 动态请求转发到9000端口:
    location / {
        proxy_pass       http://127.0.0.1:9000;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

2、更新路径后,通过浏览器访问,事实是获取到Nginx的欢迎界面,没有到我们的界面。

3、在usr/sbin 目录下,执行测试命令:/usr/sbin/nginx -t

发现测试结果没有问题,观察测试的文件夹,我们切换到这个文件夹里去看看有什么

里面有一个Nginx配置文件,打开看一下

可以看到,在http字段里,并不包含我们放置配置文件的文件夹。

把配置文件移动到对应文件夹

4、重载Nginx,命令:systemctl reload nginx

然后观察服务启动情况,命令:netstat -tnulp | grep nginx

用浏览器访问,发现我们修改过的配置文件已经生效,也转到了我们的html页面,但是没有相应的图片资源。

5、这时候我们打开日志文件,发现在浏览器多次刷新后,日志并没有更新,猜测之前的日志是默认配置文件产生的,现在我们的配置生效了,应该定位到一个新的路径。

将之前的/root 路径删掉试试,看看能不能出日志文件,删掉一测试,报错了,说明不是root的问题,应该是后缀的问题

把后缀改了,把root加上,测试,成功了,其他路径,随后也加上root

6、重启Nginx,刷新浏览器访问,access日志果然刷新了,但是没有我们想要的信息(没有相应图片资源的问题)

再看error日志,终于发现原因是权限的问题。

ps -ef | grep nginx,用这个命令看看启动Nginx的user都是谁,原来是启动者不一致导致的权限冲突,把user都改为root,终于可以正常访问了。

7、将监听端口改为默认的80,这样用户就不需要加入端口号,就可以访问了

重载看一下,好像不太对劲,刷新浏览器看看,果然到了Nginx的欢迎界面

看一下同一文件夹下的default文件都干点什么,发现80端口被它占用了

把它挪到一个备份文件夹下(自己新建的),然后测试重载Nginx,刷新浏览器,恢复正常访问了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值