我有两个网站,我想在使用Apache服务器的Linux机器上托管。因为此时我无法获取域名,所以我通过IP访问服务器,因为我还不需要有域名。
第一个站点由几个HTML页面组成,位于/var/hostroot/lifeonearth/{all files here}
中,另一个站点由几个PHP页面组成,位于/var/hostroot/webDarts/{all files here}
中。
默认情况下,当我转到我的IP地址时,它会带我到默认的“YourApacheServerisWorking”页面。因此,从现在开始,我该如何使它能够通过某些子域(如lifeonearth.(my IP)
或webDarts.(my IP)
)访问每个站点,或者,我应该通过不同的端口访问它们。如果是后者,我该怎么办?
最佳答案
我们有两个网站名。
1. example1.test.local (/var/www/example1)
2. example2.test.local (/var/www/example2)
现在让我们在
example1
中创建两个名为example2
和/etc/apache2/sites-available
的文件。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计算机是本地的,请转到您希望访问这些网站的Windows计算机,并打开以下文件
C:\Windows\System32\drivers\etc\hosts
并提及你的ip和网站名称
192.168.249.101 example1.test.local
192.168.249.101 example2.test.local
就这样!如果你发现任何困难,请告诉我。
我在结尾复制了这个场景,它对我很有用。希望对你有用!