Bagaimana cara membuat halaman web di direktori rumah saya dan server web melayani mereka di browser web saya?

9

Saya baru saja menginstal browser web Apache di Debian Squeeze (menggunakan perintah taskseldan memilih [ ] Web server). Sekarang saya membuatnya untuk memulai sudo /etc/init.d/apache2 startdan kemudian saya pergi ke browser saya http://localhostdan memasukkan dan halaman " Berhasil ! " Muncul menunjukkan bahwa saya telah menginstal dan memulai server web berhasil.

Sekarang saya tahu bahwa file HTML untuk halaman " Berhasil! " /var/wwwDan saya percaya bahwa jika saya membuat halaman baru, saya perlu memasukkannya ke dalam direktori ini. Membuat halaman akan mudah tetapi dalam melakukannya, saya harus mengeluarkan sudoperintah masing-masing dan setiap kali saya membuat / mengedit file di bawah /var/wwwdirektori.

Saya ingin tahu bagaimana saya bisa membuat direktori di HOME saya misalnya ~/html/test/index.htmldan memiliki halaman yang ditampilkan ketika saya memasukkan alamat http://localhost/html/testdi alamat browser saya?

Eric
sumber

Jawaban:

6

Seperti yang dikatakan Ulrich, Anda dapat melakukan ini dengan mengaktifkan userdirmodul.

Di Debian, ini bisa dilakukan dengan menggunakan a2enmodutilitas, yang mengaktifkan atau menonaktifkan modul Apache. Lihat man a2enmod.

Dalam hal ini, Anda hanya perlu berlari

sudo a2enmod userdir

dan kemudian restart server Apache untuk melakukan perubahan. Perhatikan bahwa modul userdir ada di basis Apache, jadi Anda tidak perlu menginstal apa pun tambahan. Untuk referensi konfigurasi userdir ada di /etc/apache2/mods-available/userdir.conf.

Semua a2enmodlakukan di sini adalah membuat tautan simbolik dari /etc/apache2/mods-enableddirektori ke file /etc/apache2/mods-available/{userdir.conf/userdir.load}. Anda juga bisa melakukan ini secara manual. Yaitu

faheem@orwell:/etc/apache2/mods-enabled$ ls -la userdir.*
lrwxrwxrwx 1 root root 30 Feb  6 03:11 userdir.conf -> ../mods-available/userdir.conf
lrwxrwxrwx 1 root root 30 Feb  6 03:11 userdir.load -> ../mods-available/userdir.load

Kemudian letakkan barang web apa pun yang Anda inginkan tersedia di bawah ~/public_html, dan kemudian harus dapat diakses dari http://servername/~username.

Faheem Mitha
sumber
1
Meskipun jawaban Ulrich kurang lebih sama dengan ini, saya mencentang ini sebagai jawaban karena lebih detail.
Eric
6

Anda mungkin mencari mod_userdir : "Modul ini memungkinkan direktori khusus pengguna dapat diakses menggunakan sintaks http://example.com/~user/ ."

Jangan takut mengutak-atik konfigurasi, hanya memiliki cadangan file konfigurasi dan pastikan firewall Anda memblokir apache Anda ke dunia luar.

Ulrich Schwarz
sumber
1
Terima kasih @Ulrich Schwarz, saya pikir inilah yang saya butuhkan. Jadi, bagaimana cara mengatur ini? Saya belum terlalu mengenal Apache (hanya menginstalnya sekarang) dan saya tidak tahu bagaimana melanjutkan saran Anda.
Eric
2

Secara pribadi saya telah menggunakan tautan simbolik , tergantung pada proyek apakah memiliki tautan di dalamnya /var/www/atau /var/wwwtautannya sendiri ke salah satu folder di direktori home mine (misalnya ~/projects/www:). Dengan begitu saya bisa menghilangkan karakter "~". Kadang-kadang itu juga berguna bagi saya, ketika saya ingin menunjukkan sesuatu kepada beberapa pemirsa lain (melalui sesuatu seperti http://253.153.87.231/page.html:), dan seseorang yang tidak terbiasa dengan keyboard, jadi dia tidak bisa menemukan simbol "~" dari keyboard (- agak seperti mencari kunci berlabel "apa saja") .

Faheem dan Ulrich mungkin menjawab Anda dengan jawaban terbaik dan paling sering direkomendasikan (setidaknya, jika menyangkut keamanan).

Janar
sumber
Ini yang ingin saya lakukan, apakah itu bekerja dengan baik? Bisakah Anda memberikan sintaks untuk membuat tautan itu?
Menasheh
0

Sekarang Anda dapat melakukan ini dengan mengubah root web, tetapi Anda benar-benar tidak mau, dan inilah alasannya:

Jika penyerang menemukan kerentanan di Apache, atau dalam kode Anda, ia mungkin dapat memperoleh akses ke root Web. Di situlah semua barang Anda ...

Root web biasanya dilindungi, dengan kontrol untuk menghentikan penyerang keluar. Rumah Anda, mungkin tidak begitu aman.

Rory Alsop
sumber