1

今天续了域名+1y,买了一年阿里云学生服务器(¥10/月),打算做自己的作品集网站了。
以前都是用node和express做http服务器的,想尝尝鲜用nginx试试。
我的系统是Ubuntu 16.04,nginx版本1.10.0,本教程只对该版本负责

安装nginx

在终端输入$ apt install nginx

基本操作指令

启动$ nginx
重启$ nginx -s reload
启动之后访问一下试试,应该能打开默认的nginx页面
nginx默认页面

修改root文件夹

查看配置信息$ 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
看一下该目录下的文件:$ ls,应该有一个sites-enabled文件夹
进入这个文件夹:$ cd sites-enabled
里面应该有一个default文件,我们来编辑它$ vim default
把光标移动到root这一行,按键盘上的字母i进入编辑。把后面的目录改成你放网站的目录(注意需要用以/开头的绝对位置),比如我的改成了root /root/luvsky.com;
esc退出编辑,输出:wq保存并退出。

如果你和我一样把网站的文件放在了root目录下,或者访问出现了403错误,那么还要做下面这一步
进入/etc/nginx,编辑nginx.conf文件:$ vim nginx.conf
把第一行user www-data改成user root,保存退出

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

配置二级域名

如果你想要一个二级域名,比如你注册的域名是abc.com,而你想要一个play.abc.com或者portfolio.abc.com的域名,请看下去。

设置域名解析

首先在你的域名供应商处的设置相应的二级域名解析,比如我的域名是在腾讯云注册的,就去他那里设置。
比较偷懒的办法是设置泛解析,把*.luvsky.com的域名全部解析到服务器的公网ip上,具体哪个二级域名分配到那个文件,全部在nginx里配置。

nginx配置

打开/etc/nginx/sites-enabled,这个目录下的所有文件都默认被包含在nginx.conf中,需要配置其它域名的时候直接往里面加文件就行了。
比如我在原来的luvsky.com根目录下新建了一个文件test.html作为二级域名test.luvsky.com的页面,那么该这样配置:
新建文件$ vim test.luvsky.com,写入如下代码后保存退出

server {
        listen 80;
        server_name test.luvsky.com;
        index test.html;
        root /root/luvsky.com;
}

重启服务,现在test.luvsky.com这个二级域名也可以访问了。


赤橙酱
124 声望2 粉丝

UI/UX Designer, now is learning web development.