我在digitalocean.com上有VPS。对于example.com的DNS,我添加了cname子域。
服务器使用apache 2.2和php 5.5在Debian 7上工作
我遇到子域配置问题。我尝试了所有教程形式的前4个谷歌页面的“apache子域配置”。
但仍然在请求subdomain.example.com响应后是example.com内容。
我用:
apachectl -t -D DUMP_VHOSTS
结果是:
apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
[Thu Nov 28 15:58:58 2013] [warn] VirtualHost xxx.xxx.xx.xxx:80 overlaps with VirtualHost xxx.xxx.xx.xxx:80, the first has precedence, perhaps you need a NameVirtualHost directive
[Thu Nov 28 15:58:58 2013] [warn] NameVirtualHost *:80 has no VirtualHosts
VirtualHost configuration:
xxx.xx.xxx.xxx:80 subdomain.example.com (/etc/apache2/sites-enabled/subdomain.example.com:1)
127.0.0.1:80 xxx.xxx.xx.xxx (/etc/apache2/sites-enabled/000-default:1)
xxx.xxx.xx.xxx:80 example.com (/etc/apache2/sites-enabled/example.com:1)
/etc/apache2/sites-available/example.com我已启用链接i网站
<VirtualHost xxx.xxx.xx.xxx:80>
ServerName example.com
ServerAdmin email@email.com
DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
<IfModule sapi_apache2.c>
php_admin_flag engine on
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
</IfModule>
Options Includes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php index.html index.html5
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
ErrorDocument 404 /404/
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|ico|png)$ \ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ \no-gzip dont-vary
SetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-vary
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</VirtualHost>
/etc/apache2/sotes-available/subdomain.example.com我在已启用网站的链接
:80>
ServerName subdomain.example.com
ServerAdmin mail@mail.com
DocumentRoot /var/www/subdomain.example.com
ServerAlias subdomain.example.com
<Directory /var/www/subdomain.example.com>
<IfModule sapi_apache2.c>
php_admin_flag engine on
</IfModule>
<IfModule mod_php5.c>
php_admin_flag engine on
</IfModule>
Options Includes FollowSymLinks MultiViews
AllowOverride All
DirectoryIndex index.php index.html index.html5
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
ErrorDocument 404 /404/
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|ico|png)$ \ no-gzip dont-vary
SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ \no-gzip dont-vary
SetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-vary
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
</VirtualHost>
我也尝试使用ServerAlias,/ var / www中的foledrs将所有者作为www-data和755 chmod。
提前感谢任何想法。
此致
答案 0 :(得分:0)
正如你在第二个街区看到的,你错过了这个:
<VirtualHost xxx.xxx.xx.xxx:80>
应该在开头配置。您需要通过执行以下操作来获取服务器的完全限定域名: 如果您使用root作为用户,那么: nano / etc / hosts
然后添加:
127.0.0.1 localhost
#Virtual Hosts
12.34.56.789 example.com
然后保存并重启Apache,你就完成了。
答案 1 :(得分:0)
您所要做的就是将子域记录添加到您指定的域中。为此,请按照其网站上的教程:How To Set Up and Test DNS Subdomains with DigitalOcean's DNS Panel