托pipe两个域只使用一个VPS?
可能吗? 有人告诉我,但我不确定。
如果可能,我该怎么做? 我有一个/ www文件夹,我的网站所在。 我如何configuration2个不同的网站?
程序是:
-
将两个域都指向VPS的IP。
-
configuration您在VPS上安装的Web服务器以回答这两个域。
对于带有Passenger的Nginx,这是一个添加条目给你的nginx.conf文件的问题。 喜欢这个:
server { listen 80; server_name domain1; root /path/to/your/project; passenger_enabled on; } server { listen 80; server_name domain2; root /path/to/your/project; passenger_enabled on; }
检查您的Web服务器文档做类似的事情。
作为完整的初学者,我一直试图在一个Apache VPS上托pipe多个域名。 教程有太多的信息,导致我混乱。
下面我将描述如何在一个VPS服务器上使用Ubuntu和Apache来托pipe多个域的完整成员。
重要! 您需要使用root帐户来执行大部分操作。
重要! 如果您之前一直在尝试对apacheconfiguration进行一些更改,请将其撤销。
创build虚拟主机
在服务器上为您的域创build文件夹。 例如:
/home/apache/domain1 /home/apache/domain2
将index.html文件放在每个文件夹中,并带有任何文本。
This is domain1 This is domain2
转到/ etc / apache2 / sites-available文件夹。
/etc/apache2/sites-available
创build文件domain1
sudo nano domain1 <VirtualHost *:80> DocumentRoot /home/apache/domain1 ServerName domain1.com ServerAlias www.domain1.com </VirtualHost>
创build文件domain2
sudo nano domain2 <VirtualHost *:80> DocumentRoot /home/apache/domain2 ServerName domain2.com ServerAlias www.domain2.com </VirtualHost>
你可以用同样的方式创build子域。
sudo nano blog <VirtualHost *:80> DocumentRoot /home/apache/blog ServerName blog.domain.com ServerAlias www.blog.domain.com </VirtualHost>
启用创build的网站
sudo a2ensite domain1 sudo a2ensite domain2
重新启动Apache
sudo service apache2 reload
将域redirect到服务器
创buildVirtualHosts只有当你的域名redirect到服务器IP时才能正常工作。 域名只是可以转换为IP号码的名称。
本地计算机
要在本地机器上testing您的configuration,您需要编辑主机文件。
sudo nano /etc/hosts
它应该看起来像这样。
127.0.0.1 localhost domain1.com domain2.com
主机文件告诉您的计算机,该域需要redirect到本地机器。
重要! 例如,如果您在现有域的hosts文件中创build条目,
127.0.0.1 stackoverflow.com
您将无法访问此网站。
服务器
为了将域redirect到您的Web服务器,您需要创build或修改给定域的“A”types的DNSlogging到您的服务器的IP地址。 您可以通过域名注册商提供的面板控制来实现。
如果您不知道服务器的IP地址,请login到该服务器并键入命令行:
ifconfig
这总是可能的…你总是可以在VPS上使用一个或两个IP地址来configuration名称服务器。 configuration完成后,您可以使用这些名称服务器开始指向多个域。
在我的VPS上只有一个IP地址,但我在那里托pipe了35多个网站….