多个站点的 Linux 服务器子域
Posted
技术标签:
【中文标题】多个站点的 Linux 服务器子域【英文标题】:Linux server subdomains for multiple sites 【发布时间】:2016-04-09 13:36:44 【问题描述】:我想在使用 Apache 服务器的 Linux 机器上托管 2 个网站。由于此时我无法获取域名,因此我通过 IP 访问服务器,因为我还不需要拥有一个。
第一个站点由几个 html 页面组成,位于 /var/hostroot/lifeonearth/all files here
,另一个站点由位于 /var/hostroot/webDarts/all files here
的几个 php 页面组成。
默认情况下,当我转到我的 IP 地址时,它会将我带到默认的“您的 Apache 服务器正在运行”页面。所以从这里开始,我该如何做到这一点,以便我可以通过某种子域访问每个站点,例如lifeonearth.(my IP)
或webDarts.(my IP)
,或者,我应该通过不同的端口访问它们吗?如果是后者,我该怎么办?
【问题讨论】:
在给你答案之前,让我澄清一下我的疑惑。您打算在一台 Linux 机器上托管 2 个网站,对吗?两者都应该可以同时访问。对吗? 那是实时服务器吗? 我不这么认为,想想看,两个站点并没有必要同时工作,我只是希望能够通过IP地址分别访问它们中的任何一个 请看看我的回答,让我知道您需要的是什么 【参考方案1】:我们有 2 个网站名称。
1. example1.test.local (/var/www/example1)
2. example2.test.local (/var/www/example2)
现在让我们在/etc/apache2/sites-available
中创建两个名为example1
和example2
的文件。
example1
文件如下所示
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/example1
ServerName example1.test.local
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/example1>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
以同样的方式创建另一个名为example2
的文件并修改以下行
DocumentRoot /var/www/example2
ServerName example2.test.local
和
<Directory /var/www/example2>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
文件的其余部分将与 example1.
相同
然后启用这两个站点
a2ensite example1
a2ensite example2
然后重启apache服务。
现在我们要做DNS指向
如果您的 Linux 机器是 LOCAL,则转到您要访问这些网站的 Windows 机器并打开以下文件 C:\Windows\System32\drivers\etc\hosts
并提及您的 ip 和网站名称
192.168.249.101 example1.test.local
192.168.249.101 example2.test.local
就是这样!如果您发现任何困难,请告诉我。
我在最后复制了这个场景,它对我有用。希望它对你有用!
【讨论】:
认为它有效。我如何在本地网络之外访问它们,或者我读错了什么 如果它是实时服务器,那么您必须为该 Ip 进行 DNS 指向 意思是,如果我没有域名就不行? 请查看此链接***.com/questions/9454503/…以上是关于多个站点的 Linux 服务器子域的主要内容,如果未能解决你的问题,请参考以下文章
linux dns子域授权 split分离解析 缓存dns服务器