fxekobudi.net

My Activities | Linux | Networking | Open Source | CMS | Internet | Opini
only search fxekobudi.net
June 12th, 2007

Web Server Linux

by FX. Eko Budi Kristanto

Untuk konfigurasi web server dengan Apache pada Fedora Core 6, secara default sudah dapat jalan dengan hanya menjalankan service httpd saat boot atau dengan command sendiri. Tentunya harus disesuaikan dengan runlevel yang akan digunakan. Dalam bekerja sehari-hari, saya biasa menggunakan runlevel 5.

Kenapa saya harus membuat web server sendiri? Ada 3 alasan, yaitu:

  1. Belajar, mencoba keperkasaan LAMP (Linux-Apache-MySQL-PHP)

  2. Saya mau buat beberapa situs CMS dengan domain yang sengaja saya buat mirip dengan domain aslinya (ini sudah saya mulai saat saya memperkenalkan jaringan windows domain di lab komputer tempat saya bekerja). Impian saya kala itu adalah karena internet belum masuk lab, saya ingin seolah-olah siswa merasakan terhubung dengan jaringan internet, bisa punya web server sendiri (IIS), siswa bikin web sendiri dan aksesnya menggunakan domain lokal (meski akhirnya tidak dipakai oleh guru-guru. Sedih deh, padahal sudah saya buat panduannya. Hehe…). Pada kesempatan lain akan saya ceritakan pengalaman saya dalam membuat jaringan windows domain dan worgkroup.

  3. Tuntutan saat membuat proxy server untuk sekolah-sekolah YBHK, situs yang masuk dalam daftar blacklist squidguard otomatis akan saya redirect ke alamat web server local, yang menampilkan pesan singkat kami dari tim pengembang jaringan. Sebenarnya tanpa web server ini sih bisa jalan, tapi rasanya kurang pas jika siswa dan guru melihat kok alamatnya pakai IP address (so, saya gabungkan DNS server + Web server yang semuanya virtual ke proxy server yang saya buat). Sekalian iseng-iseng belajar bikin webhosting sendiri. Haha…

Proses konfigurasi yang saya lakukan:

  1. DNS server dipastikan berjalan dengan baik, termasuk untuk beberapa vitual domain untuk virtual Host yang akan saya buat.

  2. Edit file konfigurasi Apache.

  3. Membuat file tambahan untuk memudahkan manajemen virtual Host .

  4. Jalankan service httpd.

  5. Test konfigurasi web server menggunakan browser.

Konfigurasinya ada pada 2 file berikut:
/etc/httpd/conf/httpd.conf
/etc/httpd/conf/vhosts.conf (file buatan saya sendiri, untuk memudahkan manajemen virtual host web server saya)

Direktive Apache yang saya rubah dalam konfigurasi web server saya adalah:
### Section 1: Global Environment
User apache
Group apache

### Section 2: ‘Main’ server configuration
DocumentRoot “/var/www/html”
<Directory “/var/www/html”>
DirectoryIndex index.html index.html.var index.php index.php5

### Section 3: Virtual Hosts (IP based virtual hosts)
# Konfigurasi virtual host
Include conf/vhosts.conf

Sedangkan konfigurasi file /etc/httpd/conf/vhosts.conf saya 4 diantaranya (4 virtual host) sebagai berikut:
(Catatan: Anda harus sudah mengkonfigurasi domain untuk virtual tersebut, jika tidak, maka virtual Host saat diakses web browser tidak akan menemukan DNS servernya). Maksud saya dengan menggunakan IP Based virtual Host adalah agar PC yang saya gunakan dengan 1 NIC saja dapat memiliki beberapa domain.

NameVirtualHost 192.168.0.44:80

<VirtualHost 192.168.0.44:80>
ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html
ServerName linuxer.local
ServerAlias www.linuxer.local
ErrorLog logs/error_log
CustomLog logs/access_log combined
</VirtualHost>

<VirtualHost 192.168.0.44:80>
ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html/rpm
ServerName repository.local
ServerAlias www.repository.local
ErrorLog logs/repository.local -error_log
CustomLog logs/repository.local -access_log combined
</VirtualHost>

<VirtualHost 192.168.0.44:80>
ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html/smf
ServerName forum.local
ServerAlias www.forum.local
ErrorLog logs/forum.local-error_log
CustomLog logs/forum.local-access_log combined
</VirtualHost>

<VirtualHost 192.168.0.44:80>
ServerAdmin admin@linuxer.local
DocumentRoot /var/www/html/fxekobudi
ServerName fxekobudi.local
ServerAlias www.fxekobudi.local
ErrorLog logs/fxekobudi.local -error_log
CustomLog logs/fxekobudi.local -access_log combined
</VirtualHost>

Sebagai catatan, bahwa direktori root harus dapat diakses oleh webserver (user dan groupnya), dengan demikian, perlu merubah permission direktori tersebut. Jalankan saja command berikut:
[root@ibm-eko fxekobudi]# chown apache.apache [nama direktori]

Selanjutnya untuk mengaktifkan service, saya gunakan command ini:
[root@ibm-eko fxekobudi]# /sbin/service httpd start
Dan saya aktifkan service named untuk runlevel 3 dan 5 dengan command:
[root@ibm-eko fxekobudi]# /sbin/chkconfig –levels 35 httpd on

Langkah terakhir adalah mencoba konfigurasi webserver kita, gunakan saja browser Mozilla Firefox, trus URLnya arahkan ke domain yang baru saja kita buat. Asyik juga khan, punya domain hosting sendiri, ngga hanya dalam format http://localhost.

Cara ini juga yang kayaknya dilakukan oleh perusahaan webhosting yang menggunakan Linux dan Apache. Mereka ngga perlu punya ribuan IP Public, cukup beberapa, terus dari yang beberapa itu dibuat menjadi ribuan virtual Host, salah satunya adalah shared hosting situs saya ini (http://fxekobudi.net) di MWN. Mungkin untuk 1 IP digunakan untuk ratusan domain shared hosting.

Impian saya sih jika kantor saya punya koneksi internet yang lebih baik dan punya beberapa IP Public, saya mau kelola situs-situs di tempat kerja saya pada server yang akan kami gunakan, sehingga ngga lagi terbatas oleh space share hosting (seperti saat ini), batasannya cuma kapasitas harddisk web server dan bandwith internet di tempat saya bekerja.

Impian besar saya berkaitan dengan Web server ini adalah buat usaha ISP di tanah kelahiran saya, Sarolangun…

Popularity: 46%

Related posts:

  1. Membuat DNS Server, Web Server dan Database Server Menggunakan Linux Fedora 8
  2. DNS Server Linux
  3. Instalasi Joomla 1.0.x di Web Server Lokal Berbasis Linux Fedora 8
  4. Proxy Server Linux dengan Squid
  5. Instalasi Joomla 1.5 versi Stabil di Web Server Lokal pada Linux Fedora 8

Tags: , ,

8 Responses to “Web Server Linux”

  1. mas-mas semua mo tanya nih soal web server

    saya pake FC 6 dengan LAMPP sebagai web servernya…masalah yang sekarang kok LAMPP server saya tiba2 jadi aneh…

    kronologisnya seperti ini:

    saya dan team membangun aplikasi yang berbasis WEB(PHP) awalnya menggunakan webserver Apache2Triad…setelah aplikasi tersebut itu beres kemudian kita pindahkan aplikasi tersebut ke mesin LINUX(Fedora Core 6) yang rencananya dibuat demi kepentingan SERVER kita….

    setelah lama mencari2 web server kami pun mendapatkan LAMPP webserver yang memang untuk LINUX…kedian kami install di mesin LINUX kami…

    masalahnya pun dimulai….
    ada beberapa script PHP dalam aplikasi kita yang tidak bisa jalan setelah dimasukan ke mesin LINUX…seperti script PHP untuk Upload file, dan script ini
    ———————————————————————————————————–
    //script cek ip
    if (getenv(”HTTP_X_FORWARDED_FOR”)){
    $ip=getenv(”HTTP_X_FORWARDED_FOR”);
    } else {
    $ip=getenv(”REMOTE_ADDR”);
    }
    $ip=getenv(”REMOTE_ADDR”);
    $b=fopen(”./hit/data.txt”, “r”);
    $c=fread($b, filesize(”./hit/data.txt”));
    $b=fopen(”./hit/data.txt”, “w”);
    $isi=”$username\n$hari_ini\n$jam\n$ip\n$c”;
    fputs($b, $isi);
    fclose($b);
    ————————————————————————————————————
    pertayaan saya:
    perbedaan apa yang membuat script PHP saya tidah bisa jalan normal ketika masuk ke webserver LAMPP??
    setting yang harus saya lakukan terhadap webserver LAMPP sehingga dapat berjalan seperti ketika saya menggunakan Apache2Triad di Windows???
    adakah webserver lain yang dapat saya gunakan untuk mesin LINUX selain LAMPP??

    terimasih atas jawabannya…

    FX. Eko Budi Kristanto:
    Terima kasih juga atas pertanyaannya Mas…
    Versi PHP yang disertakan pada Apache2 Triad apakah sama dengan PHP LAMP Mas Ian? Saya pernah mengalaminya sehingga menyebabkan error pada situs saya. Anda bisa menggunakan lighttpd sebagai webserver untuk Linux.

  2. Bagus tutorialnya, saya udah cari banyak tutorial tentang linux web server ngga’ ada yang sepraktis ini. Jadi…untuk pemula seperti saya lebih mudah untuk memahaminya :)

  3. OK Buanget dan saya akan coba..

  4. [...] Fedora sebenarnya pernah saya tuliskan pada artikel saya yang terdahulu, tentang DNS Server Linux, Web Server Linux. Dengan tujuan membantu rekan-rekan yang baru saja beralih ke Linux dan kebetulan menggunakan Linux [...]

  5. [...] redirect SquidGuard untuk mengarah kepada file yang sengaja saya buat di root direktori web server proxy. Untuk melakukannya, tinggal copykan saja pesan Error dalam bahasa Inggris ke direktori [...]

  6. ternyata saya benar2 masih sangat pemula banget….
    buktinya aja..dari sekian banyak yang diceritakan sama sekali belum ada yang kesimpen dihardisk bawaan saya….

  7. [...] redirect SquidGuard untuk mengarah kepada file yang sengaja saya buat di root direktori web server proxy. Untuk melakukannya, tinggal copykan saja pesan Error dalam bahasa Inggris ke direktori [...]

  8. [...] redirect SquidGuard untuk mengarah kepada file yang sengaja saya buat di root direktori web server proxy. Untuk melakukannya, tinggal copykan saja pesan Error dalam bahasa Inggris ke direktori [...]

Leave a Reply