我遇到了一个问题:我有一个专用服务器,我使用三个不同的域名和 php。现在,我有一个使用 asp.net 开发的新网站。我安装了 mono、mod_mono 并将我的程序集转移到里面/var/www/mysite
当我尝试访问我的网站时,出现了问题。我尝试了 IpAdress/mysite/,但它只给出了三个,如果我想要“IpAddress/mysite/Controller1/Action1”,它会显示 404。
正如我所说,我的服务器是 apache,用于有多个域名的 php 网站。由于其中一个域名可用于我自己的网站,我尝试创建一个子域名,例如mysite.maindomain.com
以下是文件的内容/etc/apache/sites-enabled/mysite.maindomain.com
<VirtualHost *:80>
ServerName mysite.maindomain.com
ServerAdmin web-admin@mysite
DocumentRoot /var/www/mysite
MonoServerPath sousdomaine.domaineprincipal.com "/usr/bin/mod-mono-server2"
MonoSetEnv mysite.maindomain.com MONO_IOMAP=all
MonoApplications mysite.maindomain.com "/:/var/www/mysite"
<Location "/">
Allow from all
Order allow,deny
MonoSetServerAlias mysite.maindomain.com
SetHandler mono
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI "\.(?:gif|jpe?g|png)$" no-gzip dont-vary
</Location>
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/xml text/javascript
</IfModule>
</VirtualHost>
当我调用 mysite.maindomain.com 时,它显示“137 ERR_NAME_RESOLUTION_FAILED”
我必须提供什么配置才能使 mysite.maindomain.com 或 IpAdress/mysite/ 工作?
编辑
我尝试通过放置 maindomain.com 而不是 * 来更改 vhost 配置,然后我还运行:
nslookup mysite.maindomain.com
并得到了
Server: 127.0.0.1
Address: 127.0.0.1#53
** server can't find mysite.maindomain.com: NXDOMAIN
dig ciiarena.guildwars2-rage.com
并得到:
; <<>> DiG 9.7.3 <<>> mysite.maindomain.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 10196
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;mysite.maindomain.com. IN A
;; AUTHORITY SECTION:
maindomain.com. 9588 IN SOA a.dns.gandi.net. hostmaster.gandi.net.1342214675 10800 3600 604800 10800
;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Dec 27 17:21:05 2012
;; MSG SIZE rcvd: 108
使用 wget mysite.maindomain.com 后,error.log 中没有显示任何内容。事实上,我在服务器上尝试的 wget 导致 302 重定向到 maindomain 以外的其他域。
答案1
回顾你们的问题和评论,我注意到了一些事情。但首先,最重要的是:这是一个 DNS 问题。
- 检查您的 DNS 服务器并确保您已为该特定子域设置 A 记录。
- 在评论中,当建议将 127.0.0.1 添加到您的 /etc/hosts 文件时,这应该在服务器上完成,而不是在客户端计算机上完成。您是在服务器上还是在工作站/客户端上编辑了 /etc/hosts 文件?如果不是服务器,请返回并修复它。
- 当您确定 DNS 问题已解决时,如果仍然遇到问题,请确保将子域的 vhost 配置包含在 Apache 中与主域相同的文件中。但是当您这样做时,确保放置子域名的虚拟主机多于主域的 vhost 容器。
祝你好运。