Nginx部署应用

总结一下在Linux系统上部署应用的过程。这里主要是写给一点头绪都没有的同学,大牛可飞过

1、Nginx部署安装。大家可以百度具体步骤。

2、Nginx配置文件,安装完成后,文件都在/etc/nginx/文件夹下。

3、/etc/nginx/nginx.conf为nginx配置文件(有些同学可能会在该配置文件下进行站点的配置)。站点配置文件在/etc/nginx/sites-enable文件夹下,用来建立多个不同的站点,组织和管理。

ps:我们也可以把配置文件放在/etc/nginx/sites-avaliable/文件夹中,意思就是把/etc/nginx/sites-enable中的配置文件链接到/etc/nginx/sites-avaliable/文件夹中相应的配置文件。

具体的linux命令为:ln -s/etc/nginx/sites-enable/dotcom/etc/nginx/sites-avaliable/dotcom

为什么还有链接到/etc/nginx/sites-avaliable/文件夹中呢,就在/etc/nginx/sites-avaliable/中配置文件不可以吗?原因:只有在sites-enable目录下的配置文件才能真正的被用户访问。

4、站点的配置(配置站点文件)

在/etc/nginx/sites-avaliable目录下新建文本文件,或者找到之前配置过的站点文件,向文件中继续添加server段。Nginx配置文件有自己的格式,这些信息都被写在server{}代码段中。

具体的格式为:

server{

                具体的配置信息;

}

相关的配置信息讲解:

listen 80;监听端口,互联网默认的访问端口为80,若特定访问某个端口,可在这里设置。

server_name域名;若访问域名为 test.com。则为server_nametest.com。匹配url地址。

root 文件保存路径;托管静态站点的目录(网站的html、css文件等)

配置好这些基本变量,就要配置路由了。

location /{

try_files $uri $uri//index.html;

}

ps:此处的 / 为根路径,相对于变量root而言,就是可访问根目录下的所有内容。

location可接受2个参数:正则表达式/字符串(用来匹配某个特定的目录)、一段代码(访问的具体内容)。

所以综合起来,可以写为这样:(域名为www.test.com,网站文件放在/var/data/test目录下)

server{

                    listen 80;

                    server_namewww.test.com test.com;

                    root /var/data/test;

                    location / {

                                     try_files $uri $uri//index.html;

                                     }

}

访问流程为:

1)来自www.test.com的请求进入;

2)nginx找到server片段代码,其中server_name为www.test.com,使用并处理请求。

3)location匹配路径为 / ,所以可以访问根目录下的所有内容。首先会寻找一个未命名的文件,这里的uri匹配的是没有名称的文件,所以无法找到;再次访问没有名称的文件夹,仍是没有找到,最后查找index.html文件,找到并加载。

5、启动服务

总结:首先添加server代码段,系统会查找/etc/sites-enable目录下的所有配置文件用于显示对应的内容,但是服务器不知道你做了这些改动,所以你要重启nginx服务。

linux命令为:service nginx reload 相当于调用了配置文件,也可以写为 /etc/init.d/nginx reload


总结的比较粗糙,但是大致的思路是这样的,具体的细节和不同可以在查找,希望对初次接触nginx的同学有所帮助,若有出错请提出,多多包涵!

你可能感兴趣的:(Nginx部署应用)