Mengapa Mac OS X Lion Apache DocumentRoot / usr / htdocs?

15

Saya bingung.

Saya tidak melihat di mana /usr/htdocsditentukan sebagai DocumentRoot untuk apache2 pada Mac OS X Lion.

Ini adalah DocumentRoot default pada instalasi OSX Lion baru.

Bisakah seseorang mengarahkan saya ke tempat ini ditentukan?

Saya mencari di seluruh /etc/apache2direktori dan tidak dapat menemukan aturan itu.

vinhboy
sumber
tidak ada di /etc/apache2/available-sites/*konfigurasi?
ragnq
Pengaturan OSX default tidak menggunakan struktur situs yang tersedia atau situs yang diaktifkan.
vinhboy
1
Ini bukan. Instalasi OS X Lion baru menggunakan /Library/WebServer/Documents, sama seperti rilis utama sebelum Lion, yang juga di mana tombol Buka Folder Situs Web Komputer ... di System Preferences »Sharing» Web Sharing menunjuk ke. Apakah Anda menginstal manajer paket seperti Homebrew, Fink, atau MacPorts; XAMPP atau solusi Apache serupa? Apa output dari which httpddan ps aux | grep httpddi Terminal?
Daniel Beck
Saya tidak menginstal salah satu dari manajer paket tersebut. Tapi terima kasih, saya akan melihat ke bawah jalan itu. Saya melihat /Library/WebServer/Documentsarahan dalam file httpd.conf. Namun, itu jelas ditimpa di tempat lain. Saya mencoba mengikuti semua referensi ke file .conf lainnya, tetapi belum berhasil.
vinhboy
Mengapa tidak grepuntuk /usr/htdocsdi mesin Anda dan melihat di mana itu ditimpa? - (/ cc @dan, Anda tidak mendapatkan balasan untuk ini)
slhck

Jawaban:

14

Ketika "Berbagi Web" TIDAK diaktifkan, ini akan /usr/htdocsmenjadi root. Saat Anda mengaktifkan "Berbagi Web" itu akan mengambil file konfigurasi di /etc/apache2/httpd.conf. Direktori akan menjadi yang ditentukan di dekat bagian berikut pada file.

<IfDefine WEBSHARING_ON>
#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "/Library/WebServer/Documents"

Anda juga dapat menggunakan direktori "Situs" Anda saat /Users/USERNAME/Sitesmengakses localhost/~USERNAME.

timoto
sumber
Spot on. Perhatikan juga baris ServerRoot "/usr"- dengan Web Sharing OFF dan tidak ada DocumentRoot alternatif yang ditentukan, tampaknya standar Apache adalah untuk mencari htdocsdalam Server Root yang ditentukan.
rymo
Benarkah beberapa <IfDefine WEBSERVICE> harus dikomentari karena merupakan WEBSERVICE?
Gucho Ca
0

Aktifkan Berbagi Web Anda terlebih dahulu, Buka preferensi sistem -> Berbagi lalu aktifkan berbagi web. Saya menulis posting di atasnya.

dimas.priyanto
sumber
Bisakah Anda menambahkan lebih detail? Posting Anda mengandung lebih banyak informasi daripada yang Anda katakan di sini.
Simon Sheehan
jadi dia menulis posting, pergi dan membacanya dan mengatur berbagi web Anda di singa))) Saya melakukan ini juga, sebelumnya sekarang saya memiliki folder "Situs" di direktori home saya dan semuanya berfungsi.
holms
0

Q ini membantu saya memecahkan masalah identik pada SnowLeopard hari ini. Hati-hati: itu adalah httpd.confdi /private/etc/apache2 tidak di /etc/apache2 (yang juga ada) yang mendapat membaca dan menunjuk ke /Library/WebServer/Documentsdalam kasus saya.

Saya harap ini membantu (orang lain juga).

P. Marecki
sumber
Seluruh folder / etc adalah tautan ke / private / etc sehingga keduanya adalah satu dan sama.
Fireandlight27
@ Fireandlight27 Saya tidak berpikir itu pada SL, karena saya tidak akan menulis sebaliknya. Saya senang mereka terkait dalam kasus Anda; versi OS yang mana?
P Marecki