apache - 如果服务器安装了 nginx 和 apache,我如何找出它的网站使用哪一个?

标签 apache nginx scripting ansible

我们有很多服务器和虚拟主机,其中一些使用 nignx,一些使用 httpd 或 apache 作为他们的域。我想写一个 ansible 脚本来提取虚拟主机用于其网站的网络服务器的信息,问题是他们中的很多人都安装了所有 3 个网络服务器,但实际上只有一个用于网站运行(其他可能处于事件状态)。

我的意思是,我什至不知道从哪里开始。一个简单的 bash 脚本示例会很好,它可以准确输出虚拟主机的 Web 服务器。

最佳答案

如何检查正在使用它们的进程的端口 80 或 443:

sudo netstat -ntlp | grep '0.0.0.0:80' | awk '{print $7}'

对于端口 443:

sudo netstat -ntlp | grep '0.0.0.0:443' | awk '{print $7}'

输出将是这些行之一:

xx/httpd # for apache
xx/nginx # for nginx

你可以编写一个 ansible 任务来运行这个 cmd

关于apache - 如果服务器安装了 nginx 和 apache,我如何找出它的网站使用哪一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57197324/

相关文章:

使用本地用户帐户在 Windows 上进行基于 PHP 表单的身份验证

ssl - Nginx 使用 SSL 服务错误的根目录

node.js - 如何使用不同域名的 nginx 为 nodejs 应用程序和 apache tomcat 应用程序制作代理?

html - 新的谷歌图片如何正确 float

scripting - 在静默模式下运行 CMD 或 BAT

mysql - apache mysql - 3306 上的 "packets out of order"

mysql - Apache 日志文件中的奇怪引荐来源网址 : empty string and what looks like MySQL code

java - iBatis/Java - 索引冲突

php - PHP memory_limit是否为PHP预分配内存

c# - 使用 List 创建脚本