Apache2 新的 VirtualHost 条目找不到服务器——DNS 问题?

Apache2 新的 VirtualHost 条目找不到服务器——DNS 问题?

我在服务器Apache2上使用Ubuntu 12.04.5 LTS。服务器是我公司的(工作)服务器,有一个公共 IP,此外,它托管了大约 5 个不同的页面,这些页面在全球范围内可用,我的意思是在互联网上,因此在家里我可以轻松访问它们。

最近,有人告诉我在该服务器上创建另一个网站(一个新网站),该网站也应该可以通过互联网访问。

这是我做的:

  1. /home/mazix/test在目录中创建页面
  2. chmod 755 /home/mazix/test
  3. 在中创建了一个新的availble site文件(名为testorg/etc/apache2/sites/available

        ServerName testsite.org
        ServerAlias www.testsite.org
        DocumentRoot /home/mazix/test
        WSGIScriptAlias / /home/mazix/test/wsgi.py
    
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
    
        <Directory /home/mazix/test>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                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 /home/mazix/test/logs/error.log
    
        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn
    
        CustomLog /home/mazix/test/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>
    

  4. 做了:sudo a2ensite testorg,然后sudo service apache2 reload

但是,当我尝试通过在浏览器中输入内容从家里的计算机访问该页面时,www.testsite.org它会显示浏览器找不到服务器的消息。

我真的不知道发生了什么。我想可能是 DNS 问题?我检查了文件/etc/hosts,但没有此服务器托管的其余页面的条目(但是,它们仍可在互联网上找到)。我不知道服务器是否运行 DNS(可能没有,但我有 root 访问权限,如果您告诉我如何检查,我会这样做)。

我的问题是:我是否应该做更多的事情来让网页在互联网上可用?我是否应该添加一些 DNS 条目?如果是,如何添加以及在哪里添加?

一些 Apache 信息:

Server version: Apache/2.2.22 (Ubuntu)
Server built:   May 28 2015 23:53:47
Server's Module Magic Number: 20051115:30
Server loaded:  APR 1.4.6, APR-Util 1.3.12
Compiled using: APR 1.4.6, APR-Util 1.3.12
Architecture:   64-bit
Server MPM:     Prefork
  threaded:     no
    forked:     yes (variable process count)
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=128
 -D HTTPD_ROOT="/etc/apache2"
 -D SUEXEC_BIN="/usr/lib/apache2/suexec"
 -D DEFAULT_PIDLOG="/var/run/apache2.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/var/run/apache2/accept.lock"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="mime.types"
 -D SERVER_CONFIG_FILE="apache2.conf"

的结果apache2 -S

apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
VirtualHost configuration:
wildcard NameVirtualHosts and _default_ servers:
*:443                  is a NameVirtualHost
         default server 127.0.1.1 (/etc/apache2/sites-enabled/default-ssl:2)
         port 443 namevhost 127.0.1.1 (/etc/apache2/sites-enabled/default-ssl:2)
         port 443 namevhost work.abc.org (/etc/apache2/sites-enabled/redmine:29)
*:80                   is a NameVirtualHost
         default server abc.org (/etc/apache2/sites-enabled/000-default:1)
         port 80 namevhost abc.org (/etc/apache2/sites-enabled/000-default:1)
         port 80 namevhost hewitt.se (/etc/apache2/sites-enabled/steve:1)
         port 80 namevhost afg.uni.city.se (/etc/apache2/sites-enabled/afg:1)
         port 80 namevhost wert.oop.net.se (/etc/apache2/sites-enabled/wert:1)
         port 80 namevhost test.org (/etc/apache2/sites-enabled/test:1)
Syntax OK

答案1

  1. 您需要在公共 DNS 中有一个 DNS 记录 www.testsite.org,指向(直接或间接)您服务器的 IP 地址,以便可以通过名称 www.testsite.org 从 Internet 访问您的服务器。
  2. 您可以使用 Linux host(1) 命令检查这样的 DNS 记录是否存在并指向正确的服务器,例如“host www.testsite.org”。
  3. 如果 DNS 记录不存在,或者指向错误的服务器,则必须在其所属的 DNS 区域(即 testsite.org)中添加或更正。
  4. 为了实现这一点,请联系负责管理该 DNS 区域的人员并请她添加或更改条目,并向她提供您的服务器的 IP 地址。
  5. 如果您不知道谁负责该 DNS 区域,您可以使用 whois(1) 命令进行查找,例如“whois testsite.org”,但在这种情况下,您可能不应该使用该服务器名称。

相关内容