如何设立 nginx 上 Ubuntu 12.04 LTS 虚拟主机 (服务器块)

关于虚拟宿主

虚拟主机用来运行多个网站或从一台服务器的域。注: 虚拟主机 nginx 的网站,被 nginx 称为服务器块。然而,与 apache 的简单比较,我将它们称为虚拟主机在本教程中。
设置

在本教程中的步骤需要用户在虚拟专用服务器上拥有根权限。您可以看到如何设置初始服务器安装教程在步骤 3 和 4 中。此外,如果我引用用户在一个步骤中的,我将使用名称 www。您可以实现任何用户名很适合你。

此外,您需要有 nginx 已经安装在您的 VPS 上。如果情况并非如此,您可以下载使用此命令:

sudo apt-get 来安装 nginx

第一步 — — 创建一个新目录

创建一个虚拟主机的第一步是创建一个目录,在那里我们将保留新的网站信息。

此位置稍后将 Apache 虚拟配置文件中的文档根目录。通过添加-p 的代码行,该命令会自动生成所有的父母都为新的目录。

sudo mkdir-p: www/example.com/ public_html

您将需要指定实际批准的 DNS 域或 IP 地址,来测试一个虚拟主机正常工作。在本教程中我们将使用最经典作为占位符为正确的域的名称。

然而,你应该想要使用未经批准的域名来测试您将找到有关如何使其工作在六步您本地计算机上的信息的过程。
第二步 — — 授予权限

我们需要将目录的所有权授予给正确的用户,而不是只保持它的根系统上。你可以用相应的用户名替换下面的”www 数据”。

sudo chown-R www-数据: www-数据: www/example.com/ public_html

此外,它是重要的是确保每个人都能够读取我们新的文件。

sudo chmod 755/var/www

现在你所有都完成了权限。
第三步 — — 创建网页

我们需要创建一个新的文件,称为 index.html 我们早些时候所作的目录中。

sudo 纳米: www/example.com/ public_html/index.html

所以我们会有东西可看时,我们可以向该文件添加一些文本网站重定向到虚拟的主机。

www.example.com

成功: 设置一个虚拟主机

保存并退出
第四步 — — 创建新的虚拟主机文件

下一步是创建一个新文件,将包含所有我们的虚拟主机信息。

nginx 为我们提供了一种布局为此在站点可用的文件目录 (/等/nginx/网站-可用),和我们只需要将文本复制到一个新的自定义文件:

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/example.com

第五步 — — 设置虚拟主机

开辟新的虚拟主机文件 — — 您将看到您需要设置虚拟主机内的所有信息。

sudo 纳米 /etc/nginx/sites-available/example.com

我们要在这几句中几个变化:

服务器 {
听 80 ;# # 侦听 ipv4 ;这条线是默认值,并暗示
#listen [:]: 80 默认 ipv6only = ;# # 侦听 ipv6

根: www/example.com/ public_html ;
索引 index.html index.htm 相对应 ;

# 使站点可以从 http://localhost/ 访问
server_name 链接 ;
}

取消注释”听 80″这样进来通过该端口的所有通信将都指向该站点
更改根扩展名匹配的目录,我们在第一步。如果文档根目录不正确或缺席你将不能设置虚拟的主机。
更改到您的 DNS 服务器名称核准的域名,或者,如果你还没有,你可以使用你的 IP 地址

你不需要对此文件进行任何其他更改。保存并退出。

最后一步是通过创建一个符号链接站点可用的目录和网站启用目录之间激活主机。在 apache 中,要做到这一点的命令是”a2ensite”— — nginx 没有等效的快捷方式,但它仍不失为一个简单的命令。

sudo ln-s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/example.com

要避免”冲突服务器名称错误”和确保您的网站去显示正确的信息,您可以删除默认 nginx 服务器块:

sudo rm /etc/nginx/sites-enabled/default

第六步 — — 重新启动 nginx

我们已经对配置进行了很多变化。重新启动 nginx,使所做的更改可见。

sudo 服务 nginx 重新启动

任择第七步 — — 设置本地主机

如果已将您的域名指向您的服务器的 IP 地址你可以跳过这一步 — — 你不需要设置本地主机。您的虚拟主机上应该工作。然而,如果想试试你新的虚拟主机,而无需连接到实际的域名,您可以本地主机计算机上单独设置。

Leave a Reply

Your email address will not be published.