为了将我的 Debian VPS 用于多个域,我进行了如下操作:
从 sites-enabled/ 和 sites-available/ (配置和符号链接)中删除了默认的一个,然后在 sites-available/www.mysite.com 下添加了这个:
<VirtualHost MYIP:80>
ServerName mysite.com
ServerAlias www.mysite.com
Alias /media/ /home/myuser/mysite/media/
Alias /admin_media/ /home/myuser/django/Django-1.2/django/contrib/admin/media/
WSGIScriptAlias / /home/myuser/mysite/wsgi.py
ErrorLog /home/myuser/mysite/logs/error.log
CustomLog /home/myuser/mysite/logs/access.log combined
</VirtualHost>
我已将 ports.conf 更改为:
NameVirtualHost MYIP:80
Listen 80
<IfModule mod_ssl.c>
# SSL name based virtual hosts are not yet supported, therefore no
# NameVirtualHost statement here
Listen 443
</IfModule>
最后我通过以下命令启用了新域:
a2ensite www.mysite.com
重新启动后出现此错误:
myuser:~# /etc/init.d/apache2 restart
Restarting web server: apache2apache2: Syntax error on line 281 of /etc/apache2/apache2.conf: Syntax error on line 1 of /etc/apache2/sites-enabled/www.birertek.com: /etc/apache2/sites-enabled/www.birertek.com:1: <VirtualHost> was not closed.
failed!
请帮助这个可怜的人。
答案1
文件 /etc/apache2/sites-enabled/www.birertek.com 包含虚拟主机 www.birertek.com 的配置。
文件应该以
<VirtualHost>
后面应该跟着各种配置选项。应该有一个结束
</VirtualHost>
在底部。
检查是否有合适位置</VirtualHost>
答案2
此错误:
[...] <VirtualHost> was not closed.
似乎是因为您的配置格式不正确。您确定在实际配置中没有遗漏斜线/拼写错误吗?不过,提供的代码片段看起来没问题,所以我不确定您为什么会出现这种情况。顺便问一下,DocumentRoot
您使用什么作为虚拟主机?