我正在运行VPS,并有几个网站在1个Apache实例下提供服务。 与此问题是,我正在Django应用程序,这可能需要我重新启动Apache。 运行Apache的多个实例是否有任何问题,并且每个实例都服务于不同的站点? 这将允许我重新启动一个实例,而不会影响另一个实例。
除非有人有更好的主意?
谢谢!
编辑运行更轻量级的Web服务器来处理简单的HTML网站,而不是Apache?
只要您指向不同的日志并绑定到不同的IP /端口,那就完全没有问题了。 但显而易见的问题是,为什么你需要重新启动Apache?
要回答你的第二个问题:是的,nginx擅长提供静态的HTML文件,实际上,那里有一些使用nginx作为反向代理的部署,以减轻主Apache服务器的负担。
你应该尝试Django的工作,而不需要重新启动Apache。 大多数服务器端的环境在开发工作的时候都可以正常工作,而不需要一遍又一遍地停止和启动Web服务器。
但是,只要确保第二个服务器的configuration文件指向不同的资源,就可以运行任意数量的空间实例。 喜欢:
关于提供静态文件。 是的,你可以使用较轻的networking服务器来做到这一点。 但是,在你做出努力之前,一定要确保它对你有好处。 apache是否真的在其他地方使用你需要的资源? 也许只是configurationApache不启动相当多的subprocess。 确保增加的复杂function会为自己付出代价,因为在这个道路上,当他们试图弄清楚一切是如何工作的时候,几乎肯定会让人困惑。
你可以使用“apachectl graceful”(“httpd -k graceful”)刷新Apache的configuration。
从Apache的文档 :
正常地重新启动Apache httpd守护进程。 如果守护进程没有运行,则启动它。 这与正常重启的不同之处在于当前打开的连接不会中止。 副作用是旧的日志文件不会立即closures。 这意味着如果在日志轮转脚本中使用,则可能需要大量的延迟才能确保在处理旧日志文件之前closures旧日志文件。 这个命令在启动重启之前自动检查configtest中的configuration文件,以确保Apache不会死亡。 这相当于apachectl -k优雅。