我在Apache Tomcat前面使用Apache HTTPD和以下虚拟主机:
$ cat /etc/apache2/sites-enabled/onlinetaskboarddotcom
<VirtualHost *:80>
ServerAdmin comented@out.com
ServerName www.onlinetaskboard.com
ServerAlias onlinetaskboard.com
DocumentRoot /home/ubuntu/www/apache/onlinetaskboarddotcom
ProxyPass / http://www.onlinetaskboard.com:8080/
ProxyPassReverse / http://www.onlinetaskboard.com:8080/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/ubuntu/www/apache/onlinetaskboarddotcom/>
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
</VirtualHost>
没有像www
和onlinetaskboard.com/login
这样的onlinetaskboard.com/someOtherValidPage
子域名的网址可以正常使用,但是一旦我加入了像www
这样的www.onlinetaskboard.com
子域名,那么我会得到一个404 Chrome等浏览器出错。
以下是我在Chrome中观察到的请求/响应标头。
使用www
子域名:
Request: Request URL:http://www.onlinetaskboard.com/ Request Method:GET Status Code:404 Not Found Request headers: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en;q=0.8 Connection:keep-alive Cookie:JSESSIONID=DE44F60835D23E6AB3CC2A2E8B9D6279 Host:www.onlinetaskboard.com User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/28.0.1500.71 Chrome/28.0.1500.71 Safari/537.36 Response headers: Connection:Keep-Alive Content-Encoding:gzip Content-Length:377 Content-Type:text/html;charset=ISO-8859-1 Date:Thu, 14 Nov 2013 23:39:24 GMT Keep-Alive:timeout=5, max=99 Server:Apache-Coyote/1.1 Vary:Accept-Encoding X-Pad:avoid browser bug
没有www
子域名:
Request: Request URL:http://onlinetaskboard.com/ Request Method:GET Status Code:302 Found Request Headers: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-US,en;q=0.8 Cache-Control:max-age=0 Connection:keep-alive Cookie:JSESSIONID=36D1DED5A3F7B5E185FE5D5EDD4457FC Host:onlinetaskboard.com User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/28.0.1500.71 Chrome/28.0.1500.71 Safari/537.36 Response headers: Connection:Keep-Alive Content-Length:0 Date:Fri, 15 Nov 2013 00:04:33 GMT Keep-Alive:timeout=5, max=100 Location:http://onlinetaskboard.com/login Server:Apache-Coyote/1.1
这是如何引起的?如何解决?