找不到奇怪的apache2(重新启动时解决)

找不到奇怪的apache2(重新启动时解决),apache2,Apache2,我有一个很奇怪的问题。当我重新启动我的机器(Debian linux)并在启动时加载apache2时,虚拟主机不工作,我的站点抛出一个404 not Found 但是,当我手动运行/etc/init.d/apache restart时,这个问题就解决了。我花了很多时间在这件事上,运气不好。重启前后加载相同的模块 有什么想法吗 谢谢 如其他人在评论部分所述,/etc/init.d中的脚本与/etc/default中的脚本不同。许多Linux变体现在使用服务damon,而不是旧的init.d方法。因

我有一个很奇怪的问题。当我重新启动我的机器(Debian linux)并在启动时加载apache2时,虚拟主机不工作,我的站点抛出一个
404 not Found

但是,当我手动运行
/etc/init.d/apache restart
时,这个问题就解决了。我花了很多时间在这件事上,运气不好。重启前后加载相同的模块

有什么想法吗


谢谢

如其他人在评论部分所述,
/etc/init.d
中的脚本与
/etc/default
中的脚本不同。许多Linux变体现在使用
服务
damon,而不是旧的
init.d
方法。因此,请确保
/etc/default
中的Apache配置加载了与
/etc/init.d/
中相同的配置文件,并引用了相同的二进制文件

试着做:

service apache2 restart

看看这能不能解决问题。预期不会,因此表明
/etc/init.d
/etc/default
配置不匹配。

404未找到是一个错误,提示您请求的文档不存在或不可访问

我建议您检查apache错误日志并将信息发回

它可能与配置文件问题有关: 例如,如果您请求以下地址“httX://IPofYourServer/”,则Apache将查找类似“index.html”或“XXXXX.YYY”的文件,查找该文件的名称和路径取决于httpd.conf中提供的配置或任何其他包含的文件


如果您提供日志和您试图访问的URL,人们会更好地帮助您。

AFAIK如果没有加载虚拟主机,它不会发出
404未找到
,而是会发出
500
错误。您可以通过请求一个不存在virtualhost的URL来测试这一点。如果您获得的是
404
,则表示Apache已识别您的虚拟主机,但找不到请求的文件。您真的是指没有2的
/etc/init.d/Apache
?我想不会。如果您重新启动apache2服务,会发生什么?此变体是否也“解决”了此问题?您的配置文件是否位于已装载的驱动器上?与fs装载类似,我还看到绑定到尚未成为本地IP的特定IP的服务丢失到..**服务的流量的问题。您是否可能有与此冲突的启动文件?我会重新启动所有其他启动文件,看看是否有任何原因导致apache停止工作。你的解释完全错误。
服务
包装器在传统的
sysvinit
上下文中所做的一切就是在启动脚本之前清理环境变量。具体来说,它不会更改所考虑的配置。/etc/init.d/中的脚本可能来自Apache的旧安装,并且可能引用了不同的二进制文件和不同的配置文件,因为两者都在此处定义。我觉得,在没有其他证据的情况下,这可能是一个来自/etc/apache.conf vs/etc/apache2/httpd.conf或类似文件的配置文件。如果
/etc/init.d
脚本来自旧的安装,那么
service
命令将调用它,因此它不会改变所使用的配置。