Jawaban:
Httpd.conf dirancang untuk konfigurasi pengguna. Anda benar-benar tidak boleh mengedit apache2.conf karena dapat diperbarui oleh peningkatan di masa mendatang.
Opsi tambahan adalah dengan hanya meletakkan konfigurasi khusus Anda ke /etc/apache2/conf.d, semua file dalam direktori ini juga disertakan.
Ini bukan satu-satunya pilihan Anda. Di Ubuntu / Debian, Apache juga memproses semua file di /etc/apache2/sites-enabled/
(yang seharusnya merupakan symlink ke file dalam sites-available/
direktori, dikelola oleh a2ensite
dan a2dissite
program)
Anda seharusnya menggunakan direktori ini untuk VirtualHost
s.
apache2.conf termasuk httpd.conf:
a@test$:/etc/apache2$ cat apache2.conf | grep httpd.conf
Include /etc/apache2/httpd.conf
Saya pikir httpd.conf sudah usang, tetapi ditinggalkan di sana untuk orang-orang konservatif sehingga mereka menemukan jalan keluar ... :)
SUNTING:
Setelah membaca jawaban Rob, saya melakukan grep yang lebih baik:
a@test:/etc/apache2$ grep -C 1 httpd.conf apache2.conf
# Include all the user configurations:
Include /etc/apache2/httpd.conf
Konfigurasi pengguna adalah ...
Yayasan Perangkat Lunak Apache menerbitkan banyak bit perangkat lunak, salah satunya adalah server web bernama httpd
. Sumber proyek httpd antara lain meliputi httpd.conf
file konfigurasi sampel, yang diinstal secara default di /usr/local/etc/httpd
atau /etc/httpd
. Anda akan menemukan httpd dinamai demikian di sebagian besar sistem.
Namun, dulu dan jauh, seseorang dalam distribusi Debian GNU / Linux memutuskan untuk mengubah nama perangkat lunak dalam distribusi itu dari httpd
menjadi apache2
. Dengan demikian pada sistem Debian Anda akan menemukan file konfigurasi bernama apache2.conf
dalam direktori bernama /etc/apache2
. Saya tidak tahu siapa yang melakukan ini atau mengapa, tetapi ini merupakan sumber kebingungan abadi yang setara dengan menyebut Windows "Microsoft" atau ESXi "VMware". Distribusi berdasarkan Debian, seperti Ubuntu, mewarisi keanehan ini. Bahkan orang asing, mereka kemudian menyertakan file /etc/apache2/httpd.conf
yang Include
d dari apache2.conf
mana pengguna dapat menempatkan konfigurasi kustom.
Jadi jawabannya adalah, jika Anda menggunakan sistem berbasis Debian, Anda membungkukkan otak Anda untuk melakukan hal-hal seperti yang diinginkan Debian untuk melakukannya. Kalau tidak, Anda biasanya melakukan hal-hal dengan cara normal seperti proyek hulu httpd melakukannya.
Apache 2.4
Gunakan:
Tempatkan konfigurasi khusus di /etc/apache2/conf-available/{name}.conf
Aktifkan / Nonaktifkan konfigurasi Anda menggunakan sudo a2enconf {name}
atau sudo a2disconf {name}
.
(Kemudian restart layanan apache2.)
Jangan gunakan:
httpd.conf
sudah usang dan Anda TIDAK boleh melihatnya lagi - jika Anda melakukannya, biarkan kosong saat diinstal.
apache2.conf
masih terpasang, tetapi biarkan sendiri jika Anda ingin memutakhirkan Apache dengan bersih / mudah.
-
Apa pun yang mungkin Anda lihat dalam konfigurasi Apache 'global' dapat ditambahkan / diganti di bawah konfigurasi khusus Anda seperti di atas.
Lebih lanjut: https://stackoverflow.com/a/11687212/503621
Jika apache2.conf
tidak kosong, dan httpd.conf
kosong, Anda mungkin harus menggunakan apache2.conf
;-)
Tapi saya kira yang satu termasuk yang lain (dan salah satunya disimpan murni untuk alasan kompatibilitas mundur) - jadi, itu tidak akan banyak berubah.
Namun, jika Anda ingin menambahkan sesuatu, seperti yang baru VirtualHost
: apakah tidak ada sub-direktori lain, di mana Anda dapat meletakkan file Anda, dan memasukkannya?
Ini mungkin akan menjadi solusi yang lebih baik: Anda tidak akan memodifikasi file default - yang akan menyederhanakan pembaruan.
cukup buka apache2.conf dan lihat kontennya:
Include /etc/apache2/mod-enabled/*.conf
Include /etc/apache2/httpd.conf
Jadi, jika Anda ingin memasukkan konfigurasi Anda sendiri, tambahkan ke httpd.conf dan apache2.conf secara otomatis akan mendapatkannya.
Seperti kata lain, apache2.conf dapat dibuat oleh mesin dan lebih baik tidak menyentuhnya.
Untuk informasi lebih lanjut, umumnya Ubuntu menggunakan apache2.conf dan Centos menggunakan httpd.conf. Jadi semua file ini tergantung pada OS yang Anda miliki.
Untuk menemukan nama dan lokasi file konfigurasi, Anda harus:
1) Pencarian sesuai prosesnya, dalam hal ini bekerja dengan pengguna apache:
ps -ef | grep apache
(dalam contoh ini, kembali: httpd
)
2) Tampilkan variabel yang digunakan oleh biner:
httpd -V | grep 'HTTPD_ROOT' && httpd -V | grep 'SERVER_CONFIG_FILE'
Diekstraksi dan tangkapan layar di: http://www.sysadmit.com/2016/12/linux-apache-donde-esta-httpdconf-apache2conf.html