配置 Nginx 的虚拟主机

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

你可以设置域名,让域名指向服务器的 IP 地址,在服务器上,你可以把指定的域名绑定到指定的某个目录上,这就是 Web 服务器的虚拟主机的功能。你可以让多个域名指向同一台服务器,绑定为不同的域名绑定不同的目录。这样访问这些域名的时候,就会打开我们服务器的指定目录里面的东西。

下面,我们一起来看一下 Nginx 的虚拟主机的功能。

先登录到服务器 ... 输入 ssh root ... 在 @ 符号的后面,因为之前我们已经让 phoenix.ninghao.net 这个域名指向了服务器的公网的 ip 地址,所以,这里可以用它来代替 ip 地址 ...

确定要继续连接吗? 输入 yes .. 然后回车 ..

登录成功以后,先进入到 nginx 的配置文件所在的目录 ... 更改工作目录,可以使用 cd 命令 ... nginx 的配置文件默认是在根目录下面的 etc .... nginx ... conf.d ...

进来以后 ... 查看一下这个目录里面的东西 ... 输入 ls ...

在这里,会有一个默认的配置文件 ... 就是这个 default.conf .. 下面,我们去复制一份这个文件 .. 用 cp 命名 ... 先是要复制的文件的名字 ... 接着是复制之后的文件的名字 ...

把它命名为 phoenix.ninghao.net.conf ... 这样以后我就知道哪个配置文件属于哪个主机名 ...

再查看一下 ... ls

在这里,你会看到刚才我们基于 default.conf 复制的这个文件 ... 再用 vim ,去编辑一下它 ..

在这个配置文件里面 ... 有一个用 server 定义的配置区块 ... 在这个配置里面 ... listen ... 表示要监听的端口号 ... 80 是 HTTP 协议默认的一个端口号 ...

下面的 server_name ... 表示服务器的名字 .. 它后面的这个东西就是这个虚拟主机绑定到一块儿的那个域名 ...

按一下 $ ... 跳到行尾 ... 再按一下小 i ,进入到编辑模式 ... 先删除掉这个 localhost ... 把它换成之前我们设置的域名 ... phoenix.ninghao.net ... 这个域名已经指向了这个服务器的 ip 地址 ...

再往下看 ...

root ... 就是根的意思 ... 在 location / 这里面,有一个 root ... 我们可以先删除掉这里的 root ... 按一下 esc ... 再按两个小写的 d ... 可以删除掉当前行 ...

然后,我们直接在 server 里面,去设置一个 root ...

按下小 i 进入编辑模式 .. 输入 root ... 它的后面,就是 phoenix.ninghao.net 这个域名的根目录 ... 也就是,访问 phoenix.ninghao.net,打开的就是这个 root 后面设置的目录里面的东西 ...

这里我们设置成根目录下面的 alidata1 ... www .. phoenix.ninghao.net ...

再回到这个 location / 。它的意思就是,基于 server 里面的 root 设置的目录的根目录 ... 修改一下它里面的 index 对应的值 ... 在这里,加上一个 index.php ... 这个 index 设置的东西就是默认打开的文件 ... 如果在这个目录里面有 index.php ,就默认打开它 ... 如果没有,就去试一下 index.html,如果还没有,再去打开 index.htm .. 都没有,就返回一个 404 的错误 ...

在以后,我们需要再回来继续修改这个配置文件 ... 先保存一下 .. 输入 :wq ...

下面再去创建这个虚拟主机需要的目录 ... 进入到 alidata1 ...

在这个目录下面创建一个 www 的目录 ... 再进入到这个目录 ... 再这个 www 里面,再创建一个 phoenix.ninghao.net ... 这个目录就是 phoenix.ninghao.net 这个域名的根目录 ..

想让修改的 nginx 的配置生效的话,需要去重新加载一下,或者重新启动一下 nginx ... 可以先测试一下配置文件有没有错误 ... 输入 nginx -t

这里出现了一个错误 .. directive root is not terminated by ; 意思就是,配置文件里面的 root 这个指令的结尾没有分号 ..

再去编辑一下这个配置文件 ...

找到 root 这个指令 ... 在它的结尾的地方 ... 添加一个分号 .. 保存 ...

再测试一下 ... 这次就没有问题了 ... 然后再去重新加载一下 nginx ... service nginx reload ... 使用这样的形式可以重新加载指定的服务的配置 .. 用一个 service ,加上服务的名字 ... 后面再加上 reload ..

提示 OK ... 这样配置就会生效了 ...

进入到 phoenix.ninghao.net 这个域名的根目录 ...

在这个目录里面,新建一个叫 index.html 的文件 ... 然后在这个文件里输入点内容 .. 保存一下 ...

回到浏览器 ... 打开 phoenix.ninghao.net ... 刷新一下 ... 你会看到刚才我们在 phoenix.ninghao.net 的根目录下面创建的文件里面的内容 ...

再回到用 ip 地址打开的这个标签 ... 刷新一下 ... 显示的还是原来的内容 ...

配置 Nginx 的虚拟主机《 阿里云 ECS:Linux 服务器 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点