Apache为什么不将我的IP地址重定向到服务器上的所需位置?

dan*_*007 5 apache2

我做了一个简单的页面/home/david/mainSite/index.html。然后,我在Apache中添加了虚拟主机,以将我的IP地址重定向到此页面。

<VirtualHost *:80>
ServerName 74.181.105.228
DocumentRoot /home/david/mainSite
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

但是,当我74.181.105.228在重新启动Apache之后进入时,会得到一个包含此文本的页面,而不是“ index.html”。

Welcome to mydomain.com!
This is the default web page for this server.
The web server software is running but no content has been added, yet.
Run Code Online (Sandbox Code Playgroud)

为什么Apache重定向到默认页面而不是“ /home/david/mainSite/index.html”?

这是我的“ / etc / apache2 / sites-available / default”文件的样子。

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        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 ${APACHE_LOG_DIR}/error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    CustomLog ${APACHE_LOG_DIR}/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>

</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

dan*_*007 1

我发现了答案!这很棘手。

在“apache2.conf”中,我最初有ServerName 74.181.105.228,这使得通过浏览器访问 74.181.105.228 加载我的服务器的默认页面。

更改“apache2.conf”中的此值可以ServerName mydomain.com解决问题,因为 Apache 不再将 74.181.105.228 定向到我的服务器的默认页面。反过来,我可以指示 74.181.105.228 从我的文件系统中的某个目录加载页面。

我的虚拟主机块仍然存在

<VirtualHost *:80>
ServerName 74.181.105.228
DocumentRoot /home/david/mainSite
</VirtualHost
Run Code Online (Sandbox Code Playgroud)