如何确定Apache是​​否安装在系统上?


28

我的计算机上装有Linux Mint,但我不知道如何确定Apache2是否在其上或其实际安装位​​置。我http://localhost使用URL 运行我的Web浏览器(安装了PHP),它可以工作。


您安装的PHP是什么意思?
onemach 2012年

那和c,c#或unix有什么关系?
ThiefMaster 2012年

您想知道该站点文件的路径吗?
弗朗西斯科·塔皮亚

Answers:


43

我会推荐

dpkg --get-selections | grep apache

它列出了名称中包含“ apache”的所有已安装软件包。例如:

apache2                                         install
apache2-doc                                     install
apache2-mpm-prefork                             install
apache2-utils                                   install
apache2.2-bin                                   install
apache2.2-common                                install
libapache2-mod-php5                             install
libapache2-svn                                  install

它表示软件包apache2已安装在系统上。

在默认端口上查找任何正在运行的HTTP守护程序的另一种方法是:

sudo lsof -nPi | grep ":80 (LISTEN)"

其中列出了类似的内容:

apache2    1026     root    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    3966 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    4014 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    4015 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)
apache2    4016 www-data    4u  IPv6    3739      0t0  TCP *:80 (LISTEN)

-bash: dpkg: command not found以上是在某个目录中完成的吗?
elliotrock

@elliotrock不,尝试使用运行它sudo
Der Hochstapler

-bash: dpkg: command not foundAWS Linux上的相同错误甚至尝试了sudo。
Krishnadas PC

1
这个问题是关于Linux Mint的。在没有它的平台上使用dpkg是没有意义的。
Der Hochstapler '18


4

要检查apache是​​否正在运行(状态),请输入:

sudo service apache2 status

在命令行中。


这仅在将Apache作为(sysv等)服务安装的情况下有效;当然,这将涵盖很多情况。
bertieb

3

只需which httpd以root用户身份执行。


2
不敢说,但是在Mint(Debian衍生产品)上,它应该是apacheor apache2,但不是httpd...
0xC0000022L 2012年

3

我记得,Mint基于Ubuntu,因此您应该可以检查apt-cache policy apache2

$ apt-cache policy apache2
apache2:
  Installed: (none)
  Candidate: 2.2.20-1ubuntu1.1
  Version table:
     2.2.20-1ubuntu1.1 0
        500 http://us.archive.ubuntu.com/ubuntu/ oneiric-updates/main amd64 Packages
        500 http://security.ubuntu.com/ubuntu/ oneiric-security/main amd64 Packages
     2.2.20-1ubuntu1 0
        500 http://us.archive.ubuntu.com/ubuntu/ oneiric/main amd64 Packages

在这种情况下,您可以看到它尚未安装在我的系统上。如果您没有要求安装它,则可能不是-我怀疑它是默认发行版的一部分。


0

作为root用户,您可以使用以下命令测试apache是​​否以进程名称httpd,apache或apache2运行:

ps -A | grep 'apache\|httpd'

但是同样,如果进程正在运行,则只会找到apache。


1
即使您不是root也可以。
Hastur 2015年

太好了,不确定非特权用户是否可以列出全局进程,谢谢。
Siliconrockstar
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.