我cmsplus.dev
在/etc/apache2/sites-available
用下面的代码,
ServerAdmin master@server.com ServerName www.cmsplus.dev ServerAlias cmsplus.dev DocumentRoot /var/www/cmsplus.dev/public LogLevel warn ErrorLog /var/www/cmsplus.dev/log/error.log CustomLog /var/www/cmsplus.dev/log/access.log combined
现在当我使用时sudo /usr/sbin/a2ensite cmsplus.dev
,我收到了错误,
ERROR: Site cmsplus.dev does not exist!
我的网络服务器 Apache/2.4.6 (Ubuntu)
如何解决这个问题?
通过向.conf
站点配置文件添加扩展来解决此问题.
Apache a2ensite
导致:
错误!网站不存在
问题; 如果您在尝试使用以下网站启用网站时发现错误:
sudo a2ensite example.com
但它返回:
错误:mysite.com不存在
a2ensite
只是一个perl脚本,只适用于文件名结尾 .conf
因此,我不得不重新命名我的设置文件example.com
,以example.com.conf
作为可能实现如下:
mv /etc/apache2/sites-available/example.com /etc/apache2/sites-available/example.com.conf
成功
我添加.conf
到配置文件后工作
您可能已更新了Ubuntu安装,其中一个更新包括将Apache升级到2.4.x版
在Apache 2.4.x中,位于/ etc/apache2/sites-available目录中的vhost配置文件必须具有.conf扩展名.
使用terminal(mv命令),重命名所有现有配置文件,并将.conf扩展名添加到所有配置文件中.
mv /etc/apache2/sites-available/cmsplus.dev /etc/apache2/sites-available/cmsplus.dev.conf
如果您收到"权限被拒绝"错误,请在终端命令前添加"sudo".
您无需对配置文件进行任何其他更改.
启用vhost:
a2ensite cmsplus.dev.conf
然后重新加载Apache:
service apache2 reload
您的网站现在应该正常运行.
更新:如前所述在这里,您安装一个Linux发行版更改了配置,使其只包含*.conf文件.因此它与Apache 2.2或2.4无关
还有另外一种好方法,只需apache2.conf
在最后编辑文件
IncludeOptional sites-enabled/*.conf
只需删除.conf
最后,就像这样
IncludeOptional sites-enabled/*
并重新启动服务器.
(我在Ubuntu 13.10中尝试了这个,当我更新它时.)
我刚遇到同样的问题.我说它与apache.conf无关.
a2ensite必须已更改 - 第532行是强制执行.conf后缀的行:
else { $dir = 'sites'; $sffx = '.conf'; $reload = 'reload'; }
如果您将其更改为:
else { $dir = 'sites'; #$sffx = '.conf'; $sffx = ''; $reload = 'reload'; }
......它没有任何后缀.
当然,您不希望更改a2ensite脚本,但更改conf文件的后缀是正确的方法.
它可能只是一种强制执行".conf"-suffix的方法.
所以..最快的方法是重命名以".conf"结尾的站点配置名称
mv /etc/apache2/sites-available/mysite /etc/apache2/sites-available/mysite.conf a2ensite mysite.conf
以前评论的其他说明:
在apache 2.36之前没有引入IncludeOptional - 在上面进行更改然后在2.2上重启将使您的服务器停机!
另外,版本2.2 a2ensite不能像所描述的那样被黑客入侵
同样,由于您的站点可用文件实际上是一个配置文件,因此它应该以这种方式命名..
一般不要重启服务(Web服务器是一种服务):
如果他们没有跑步,人们找不到他们!认为Linux不是MS Windows ..
服务器可以运行多年 - 实时更新,重新加载配置等.
云并不意味着您必须重新启动才能加载配置文件.
更改服务配置时,使用"重新加载"而不是"重新启动".
restart会停止服务然后启动服务 - 如果更改配置时出现任何问题,服务将不会重新启动.
重新加载会出错,但服务永远不会关闭,让你有机会修复配置错误,这只能是错误的语法.
debian或ubunto [此主题的服务名称为apache2]
service {service-name} {start} {stop} {reload} ..
其他操作系统留给读者一个例外.