今天续了域名+1y,买了一年阿里云学生服务器(¥10/月),打算做自己的作品集网站了。
以前都是用node和express做http服务器的,想尝尝鲜用nginx试试。
我的系统是Ubuntu 16.04,nginx版本1.10.0,本教程只对该版本负责
安装nginx
在终端输入$ apt install nginx
基本操作指令
启动:$ nginx
重启:$ nginx -s reload
启动之后访问一下试试,应该能打开默认的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这个二级域名也可以访问了。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。