UserDir Apache Module

Hampir saja kehabisan ide nulis tapi muncul masalah di web server yang saya tangani, untung saja. Jadi begini ceritanya..

Umumnya file yang diakses http://www.something.com adalah file index.html atau index.php di folder htdocs (kalau di apache windows) atau di /var/www/html (untuk apache server linux). Nah, ada kalanya kita sebagai pemilik web server tersebut berkeinginan untuk memberikan fasilitas kepada user yakni berupa homepage mereka. Web server memiliki modul yang memfasilitasi user agar dapat memiliki web pagenya sendiri.

Komponennya seperti ini :

  • Web Server dengan konfigurasi server di /etc/httpd/conf/httpd.conf (untuk linux) dan C:\\path\to\xampp\apache\conf\httpd.conf (untuk windows)
  • User youruser dengan home mereka di /home/youruser
  • Folder public_html/ pada /home/youruser mereka sebagai tempat user meletakkan dokumen-dokumen pada homepage mereka

Yang dikonfigurasi pada /etc/httpd/conf/httpd.conf adalah bagian UserDir Module

# UserDir: The name of the directory that is appended onto a user's home
# directory if a ~user request is received.
#
# The path to the end user account 'public_html' directory must be
# accessible to the webserver userid.  This usually means that ~userid
# must have permissions of 711, ~userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a "403 Forbidden" message.
<IfModule mod_userdir.c>    
#    
# UserDir is disabled by default since it can confirm the presence    
# of a username on the system (depending on home directory    
# permissions).
     UserDir disable
#    
# To enable requests to /~user/ to serve the user's public_html    
# directory, remove the "UserDir disable" line above, and uncomment    
# the following line instead:    
#    UserDir public_html 
</IfModule>
#
# Control access to UserDir directories.  The following is an example
# for a site where these directories are restricted to read-only.
#
<Directory /home/*/public_html>
    AllowOverride FileInfo AuthConfig Limit
    Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
    <Limit GET POST OPTIONS>
        Order allow,deny
        Allow from all
    </Limit>
    <LimitExcept GET POST OPTIONS>
        Order deny,allow
        Deny from all
    </LimitExcept>
</Directory>

Gampangnya tinggal comment bagian

UserDir disable

lalu uncomment bagian

UserDir public_html

Tapi bisa juga memperbolehkan usertertentu saja yang mendapatkan hak homepage dengan konfigurasi seperti :

UserDir disabled
UserDir enabled youruser youruser1 youruser2

Atau sebaliknya memperbolehkan semua user memiliki homepage kecuali beberapa user dengan konfigurasi seperti :

UserDir enabled
UserDir disabled youruser youruser1 youruser2

Catatan Penting :

  • Folder /home/youruser/ harus memiliki konfigurasi moderasi 711
  • Folder /home/youruser/public_html/ harus memiliki konfigurasi moderasi 755

Harapannya mereka bisa mengakses homepage mereka di http://www.something.com/~youruser. Demikian penjelasan tentang penggunaan modul userdir. Di windows juga ada sih. Konfigurasinya terdapat di C:\\path\to\xampp\apache\conf\extra\httpd-userdir.conf. Tapi saya belum pernah coba. Silakan dicoba🙂

Tiba-tiba ada seorang user yang mengeluh kenapa homepage mereka tidak bisa diakses. Seperti yang dijelaskan di atas bahwa :

# The path to the end user account 'public_html' directory must be
# accessible to the webserver userid.  This usually means that ~userid
# must have permissions of 711, ~userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a "403 Forbidden" message.

Rupanya pesan error itu terjadi karena ada yang kurang tepat pada bagian moderasinya. Semoga membantu🙂

Satu pemikiran pada “UserDir Apache Module

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s