美文网首页服务端开发实战
阿里云ECS初体验(3) — Nginx安装与配置

阿里云ECS初体验(3) — Nginx安装与配置

作者: 守心向暖 | 来源:发表于2017-08-02 16:00 被阅读164次

    阿里云ECS中默认是安装了Nginx 1.6.0的。

    • 登录ESC
    $ ssh root@[ESC IP地址] 
    root@[ESC IP地址]'s password: // 输入密码
    
    Welcome to aliyun Elastic Compute Service!
    
    Last login: Mon Jul 31 21:09:10 2017 from 210.13.77.213
    
    • apt-get安装Nginx
    apt-get install nginx
    
    • Nginx目录
      Nginx安装完成后,cd切入到/etc/nginx目录下有Nginx的所有文件。
    sites-enabled/      // 可添加新配置项
    sites-available/     // 在需要建立和管理多个站点的时候非常有用,可以帮助更好的组织不同的项目
    

    只有在sites-enabled目录下的配置文件才能够真正被访问,但是可以将文件放在sites-available目录下用来存档或生成链接:

    ln -s /etc/nginx/sites-available/test /etc/nginx/sites-enabled/test
    
    • Nginx配置静态服务器
    - 在sites-enabled目录下创建一个新的空白文档,命名为test
    - Nginx配置文件格式,顶层server:
    --------------------------------------------------------------------------------
    - 顶级节点
    server {
    }
    所有配置变量指令都在该花括号内编写。
    
    - listen
    声明服务器监听的端口号,互联网默认80。
    
    - server_name
    主要用来匹配url地址。
    1] 支持设置子域名
    2] 可以使用通配符或正则匹配路由
    
    - root
    托管静态站点的最关键部分,定义静态资源存放的路径
    
    - location
    location接受两个参数,一个字符串或正则和一段代码。
    字符串或正则用于匹配某个特定的目录。
    如只访问root目录,只需要加上'/'。`/`会匹配所有的url地址,如果只想匹配某个准确的字符串,只需要在前面加上一个等号:
    location = / { ... }
    
    - location > try_files
    try_files接受一组文件名或正则,用于在根目录下查找,并加载查找到的第一个结果。
    location / {
        try_files $url $url/ /index.html  // $url是Nginx提供的,每次有请求时,Nginx会生成一系列变量,存储请求的相关信息。[优先查找顺序]
    }
    --------------------------------------------------------------------------------
    

    一个简单的配置文件如下:

    server {
        listen 80;
        server_name 域名地址;
        root  /var/www/指向目录;
        location / {
            try_files $url $url/ /index.html;  // 访问规则
        }
    }
    

    在Nginx运行时,会查找/etc/sites-enabled目录下的所有配置文件用于显示对应内容。完成新的配置时,需要重启服务器:

    sudo service nginx reload
    // 这里的service实际是调用了配置文件里的内容,这些都是在使用apt时被生成的,实际调用的是/etc/init.d/nginx reload
    
    • 检测配置文件是否有错误
    root@[ESC实例]:~# nginx -t
    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
    • 查看Nginx服务状态
    service nginx status
    

    把default中的默认80改掉,如果报错已被占用的情况下。
    官方文档地址:http://nginx.org/en/docs/dirindex.html

    相关文章

      网友评论

        本文标题:阿里云ECS初体验(3) — Nginx安装与配置

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