ada banyak rasa saat coding. ada keringat dan air mata dalam mencoding. keringat saat kau berusaha menyelami makna dalam setiap ilmu coding. dan air mata disaat tiada orang yang dapat membantumu, ketika program dalam keaadaan bugging. apapun rasa dalam mencoding. cobalah untuk mengerjakan sendiri. sampai kau bisa. dan benar-benar bisa.

Saturday 14 February 2015

Redirecting dan .htaccess

Halo sobat coding :) masih semangat bukan ?
DMZ akan digunakan sebagai Web Server. terdapat 2 buah website yang ditangani oleh web server ini yaitu ip_anda: 80, ipa_anda: 8080. kemudian pada website op_anda:80 terdapat seubdirektori /admin yang mana sebenarnya file-filenya terletak di /home/admin, berbeda dengan file-file lain yang terletak di /var/www. ketika mengakses ip_anda : 80808 user harus menginputkan username dan password (menggunakan .htaccess). semua website tidak boleh menampilkan list direktori. jadi jika tidak ada file index _index.html, index.php, default.asp) maka daftar file dan subdirektori yang ada tidak akan tampil. ketika kita mengakses ip_anda: 80/example maka akan diarahkan ke ip_anda:80/example/example.html

Komputer Server
pertama kita buat scriptnya dulu melalui nano .etc/apache2/sites-available/default
lalu samakan dan tambahkan sebuah code seperti dibawah ini
<VirtualHost *:80>
        ServerAdmin webmaster@localhost

                # diganti jadi /home/admin untuk merubah folder default port:80 
        DocumentRoot /home/admin
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        # diganti jadi /home/admin mengikuti settingan DocumentRoot
        <Directory /home/admin/>
                # diganti jadi -Indexes agar list directory tidak tampil
                Options -Indexes FollowSymLinks MultiViews
                # halaman yg ditampilkan untuk error 403 diredirect ke berikut
                ErrorDocument 403 /example/example.html
                # diganti jadi None agar membatasi akses folder2 di /home/admin
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

sekarang kita menuju ke direktori home dan buat folder admin
cd /home/ && mkdir admin/
kita menuju ke folder admin dan buat file htmlnya
cd admin/ && nano index.html
<html><body>
<h1>It works!</h1>
<p>This is the default page for this server on port 80</p>
</body></html>

lalu kita buat folder public_html dan buat file htmlnya
mkdir public_html && nano example.html
<html><body>
<h1>It works!</h1>
<p>This is the redirected page for this server on port 80</p>
</body></html>

sekarang kita menuju ke folder apache linux yaitu /var/www dan buat htaccess nya
cd /var/www/ && nano .htaccess
AuthName “Your username?”
AuthType Basic
AuthUserFile “/var/www/.htpasswd
Require valid-user

kemudian buat htpasswdnya
htpasswd -c .htpasswd c11 c11 merupakan sebuah nama sembarang, kebetulan c11 merupakan nama kelompok saya, jadi ini bisa diisikan sesuai nama user yang anda buat
NewPassword: klpc11
RetypePasswod: klpc11

Komputer Client

testing untuk koneksi dari client ke server pada port 80
lynx 172.16.0.3:80
maka akan menunjukkan hasil seperti dibawah ini
It works!
This is the default page for this web server on port 80.

testing untuk koneksi dari client ke server pada port 8080
lynx 172.16.0.3:8080
maka akan menunjukkan hasil seperti dibawah ini
Username for 'User' at server 'c11:8080': c11
Password: klpc11
It works!
This is the default page for this web server on port 8080.

testing untuk koneksi dari client ke server pada port 80 untuk akses folder example dengan tujuan meredirect ke page lain
lynx 172.16.0.3:80/example
It works!
This is the redirected page for this web server on port 80.

Selesai sobat :)

No comments: