引言
最近购买了公司的美团云,把blog从GitHub page搬到了云服务器,自然还要折腾点东西,nginx是一直没接触过又特别想了解的一项,于是花了点时间折腾了一下,顺便加上了https和http2,把arayzou.com全站都转了HTTP2。上个图:
漂亮的绿色小锁:
控制台资源的协议显示h2:
Linux版本选择
服务器的Linux版本我选择的是Ubuntu 16.04,为什么?


nginx安装
1  | sudo apt-get install nginx  | 
Ubuntu安装之后的文件结构大致为:
- 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下
 - 程序文件在/usr/sbin/nginx
 - 日志放在了/var/log/nginx中
 - 并已经在/etc/init.d/下创建了启动脚本nginx
 - 默认的虚拟主机的目录设置在了/var/www/nginx-default (有的版本 默认的虚拟主机的目录设置在了/var/www, 请参考/etc/nginx/sites-available里的配置)
 
nginx常用的一些命令:
启动
1
sudo nginx
重启nginx
1
sudo nginx -s reload
修改配置后检查配置文件是否正确
1
nginx -t -c /etc/nginx/nginx.conf
查看nginx进程
1
ps -ef | grep nginx
停止nginx
1
kill -QUIT 主进程号
暴力停止
1
kill -9 进程号
nginx配置
上面说到nginx的配置文件都在/etc/nginx下,在此目录下有个nginx.conf文件,可以当做是nginx的主配置文件,打开文件可以看到这样一行:
1  | include /etc/nginx/conf.d/*.conf;  | 
意思是引入conf.d文件夹下的所有.conf的配置文件,所以我们自己的配置文件基本上都配置在.conf文件夹下就好。
进入到.conf文件夹,新建一个配置文件比如:vi demosite.conf,里面的配置内容我这里说两种,一种是动态站点,一种是静态资源目录
- 动态站点的配置文件代码:
server_name是你自己的域名,proxy_pass中配置server上的动态站点的端口 
1  | server  | 
- 静态资源目录的配置文件代码:
 
1  | server  | 
配置完成后执行sudo nginx -s reload重启nginx及可生效。