Bagaimana saya bisa menentukan apakah Apache diinstal pada suatu sistem?

28

Saya memiliki Linux Mint di komputer saya, tetapi saya tidak tahu bagaimana cara mengetahui apakah Apache2 ada di dalamnya atau di mana itu sebenarnya diinstal. Saya menjalankan browser web saya (PHP diinstal) dengan http://localhostsebagai URL dan berfungsi.

Thach Xuyen
sumber
apa yang anda maksud dengan PHP yang diinstal?
onemach
Bagaimana itu terkait dengan c, c # atau unix?
ThiefMaster
Anda ingin tahu jalur di mana file-file dari situs itu?
Francisco Tapia

Jawaban:

43

saya ingin merekomendasikan

dpkg --get-selections | grep apache

Ini mencantumkan semua paket yang diinstal yang berisi "apache" dalam namanya. Sebagai contoh:

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

Ini menunjukkan bahwa paket apache2tersebut diinstal pada sistem.

Pendekatan lain, untuk menemukan sembarang HTTP berjalan di port default adalah:

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

Yang mencantumkan sesuatu seperti:

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)
Der Hochstapler
sumber
-bash: dpkg: command not foundApakah hal di atas dilakukan dalam direktori tertentu?
elliotrock
@elliotrock Tidak, coba jalankan dengan sudo.
Der Hochstapler
-bash: dpkg: command not foundkesalahan yang sama pada aws linux bahkan mencoba dengan sudo.
Krishnadas PC
1
Pertanyaan ini tentang Linux Mint. Menggunakan dpkg pada platform yang tidak memilikinya tidak ada gunanya.
Der Hochstapler
12

Coba whichperintah:

# which apache2

Dalam pengalaman saya, biner Apache terletak di /usr/sbinsebagian besar instalasi.

Frédéric Hamidi
sumber
4
Tergantung pada distro Anda mungkin juga mencoba yang dengan 'apache' dan 'httpd'
siliconrockstar
4

Untuk memeriksa apakah apache berjalan atau tidak (status), ketik:

sudo service apache2 status

di baris perintah.

Sukhpreet Singh
sumber
Ini hanya berfungsi ketika Apache diinstal sebagai layanan ( sysvdll); yang diakui akan mencakup banyak kasus.
bertieb
3

Lakukan saja which httpdsebagai root pengguna.


sumber
2
Takut untuk mengatakan, tetapi pada Mint (turunan Debian) itu akan menjadi apacheatau apache2, tetapi tidak httpd...
0xC0000022L
3

Seingat saya, Mint didasarkan pada Ubuntu, jadi Anda harus dapat memeriksa 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

Dalam hal ini, Anda dapat melihat itu tidak diinstal di sistem saya. Jika Anda belum memintanya untuk diinstal, mungkin tidak - Saya ragu itu bagian dari distribusi default.

Kesalahan fatal
sumber
0

Sebagai root, Anda dapat menguji apakah apache berjalan di bawah nama proses httpd, apache, atau apache2, menggunakan

ps -A | grep 'apache\|httpd'

Tetapi sekali lagi, ini hanya akan menemukan apache jika proses sedang berjalan.

siliconrockstar
sumber
1
Jika berhasil meskipun Anda tidak root.
Hastur
Ah keren, tidak yakin apakah pengguna yang tidak memiliki hak istimewa dapat mendaftar proses global, terima kasih.
siliconrockstar