【发布时间】:2013-08-22 04:27:28
【问题描述】:
我正在尝试使用 apache 为 javascript Web 应用程序设置开发环境,但我似乎连最简单的事情都做不了,比如设置一个虚拟主机来提供静态 html、js 和其他文件类型。
这是我在 httpd-vhosts.conf 中尝试做的事情:
<VirtualHost *:80>
ServerAdmin test@localhost
ServerName www.nonlocal-blight.com
ServerAlias www.local-blight.com
DocumentRoot "/Apache24/documents/WebContent"
<Directory "WebContent">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
我在 WebContent 中有一个 index.html 文件,但无论我尝试访问 www.local-blight.com 还是 www.local-blight.com/index.html,我总是得到“糟糕!Google Chrome 找不到 [whatever]”。我尝试删除 ServerAlias、Document 根目录的不同文件夹、删除行 Options Indexes FollowSymLinks 以及所有内容。
我尝试使用httpd.exe -S 检查我的虚拟主机配置,但就我所见,输出看起来不错:
C:\Apache24\bin>httpd.exe -S
VirtualHost configuration:
*:80 is a NameVirtualHost
default server www.nonlocal-blight.com (C:/Apache24/conf/extra/httpd-vh
osts.conf:37)
port 80 namevhost www.nonlocal-blight.com (C:/Apache24/conf/extra/httpd
-vhosts.conf:37)
alias www.local-blight.com
port 80 namevhost www.nonlocal-blight.com (C:/Apache24/conf/extra/httpd
-vhosts.conf:37)
alias www.local-blight.com
*:443 is a NameVirtualHost
default server localhost (C:/Apache24/conf/extra/httpd-sni.conf:134)
port 443 namevhost localhost (C:/Apache24/conf/extra/httpd-sni.conf:134
)
port 443 namevhost localhost (C:/Apache24/conf/extra/httpd-sni.conf:134
)
port 443 namevhost serverone.tld (C:/Apache24/conf/extra/httpd-sni.conf
:151)
port 443 namevhost serverone.tld (C:/Apache24/conf/extra/httpd-sni.conf
:151)
port 443 namevhost servertwo.tld (C:/Apache24/conf/extra/httpd-sni.conf
:166)
port 443 namevhost servertwo.tld (C:/Apache24/conf/extra/httpd-sni.conf
:166)
ServerRoot: "C:/Apache24"
Main DocumentRoot: "C:/Apache24/documents"
Main ErrorLog: "C:/Apache24/logs/error.log"
Mutex ssl-stapling: using_defaults
Mutex proxy: using_defaults
Mutex ssl-cache: u
sing_defaults
Mutex default: dir="C:/Apache24/logs/" mechanism=default
PidFile: "C:/Apache24/logs/httpd.pid"
Define: DUMP_VHOSTS
Define: DUMP_RUN_CFG
Define: SRVROOT=/Apache24
谁能告诉我我在这里做错了什么?
【问题讨论】:
-
总是首先从 http 服务器日志文件开始。检查“访问”日志文件中实际向服务器发出的请求,并比较“错误”日志文件中报告的错误。
-
两者都没有。当我尝试转到
www.local-blight.com时,我没有收到任何访问日志和错误日志。 -
显然这些请求根本没有针对您的 http 服务器。听起来像一个名称解析问题。或者可能是您正在通过防火墙阻止请求?通过向 http 服务器发出 telnet 请求进行测试:
telnet www.nonlocal-blight.com http。它会被拒绝还是连接? -
被拒绝:
Connecting To www.nonlocal-blight.com...Could not open connection to the host, on port http: Connect failed。我尝试关闭 Windows 防火墙(我使用的唯一防火墙),但这并没有改变结果。 -
1.) http 服务器是否正在运行?修改配置后重新加载了吗? 2.)使用IP地址而不是名称时可以连接到http服务器吗? 3.) 名称“www.nonlocal-blight.com”在您的系统上实际解析为什么地址?
标签: apache virtualhost