Posts tagged web

How to redirect http request to ftp using nginx

nyoba nulis pake bahasa inggris ah…

Nginx is rocks!! i use nginx as main web server at mirror.unej.ac.id, and i’m so glad because all request from client while downloading iso/img via http files is now redirected to ftp. how can it work? just open nginx configuration at /etc/nginx/sites-available/default with your editor and add some configuration under location / {blah blah}

$ sudo pico /etc/nginx/sites-available/default

add this

rewrite ^/(.+\.(img|iso))$ ftp://mirror.unej.ac.id/$1 permanent;

and see this..

fallen:~$ rm moblin-2.1-final-20091103-002.img
fallen:~$ wget http://mirror.unej.ac.id/pub/iso/moblin/releases/2.1/images/moblin-2.1-final-20091103-002.img
--2009-11-28 22:09:01--  http://mirror.unej.ac.id/pub/iso/moblin/releases/2.1/images/moblin-2.1-final-20091103-002.img
Connecting to 10.10.3.243:3128... connected.
Proxy request sent, awaiting response... 301 Moved Permanently
Location: ftp://mirror.unej.ac.id/pub/iso/moblin/releases/2.1/images/moblin-2.1-final-20091103-002.img [following]
--2009-11-28 22:09:01--  ftp://mirror.unej.ac.id/pub/iso/moblin/releases/2.1/images/moblin-2.1-final-20091103-002.img
Connecting to 10.10.3.243:3128... connected.
Proxy request sent, awaiting response... 200 OK
Length: 790626304 (754M) [text/plain]
Saving to: `moblin-2.1-final-20091103-002.img'

100%[===================================================================================================>] 790,626,304 6.97M/s   in 90s     

2009-11-28 22:10:31 (8.39 MB/s) - `moblin-2.1-final-20091103-002.img' saved [790626304/790626304]
fallen:~$ wget http://mirror.unej.ac.id/pub/iso/ZoneCD/zoneCD_1.2-7.iso
--2009-11-28 22:26:39--  http://mirror.unej.ac.id/pub/iso/ZoneCD/zoneCD_1.2-7.iso
Connecting to 10.10.3.243:3128... connected.
Proxy request sent, awaiting response... 301 Moved Permanently
Location: ftp://mirror.unej.ac.id/pub/iso/ZoneCD/zoneCD_1.2-7.iso [following]
--2009-11-28 22:26:46--  ftp://mirror.unej.ac.id/pub/iso/ZoneCD/zoneCD_1.2-7.iso
Connecting to 10.10.3.243:3128... connected.
Proxy request sent, awaiting response... 200 OK
Length: 258668544 (247M) [text/plain]
Saving to: `zoneCD_1.2-7.iso'

100%[===================================================================================================>] 258,668,544 8.02M/s   in 59s     

2009-11-28 22:27:54 (4.15 MB/s) - `zoneCD_1.2-7.iso' saved [258668544/258668544]

fallen:~$

It’s Works bibeh!

Membuat forward/reverse proxy di apache

jika diketahui…

server yang dapat diakses dari jaringan luar adalah 192.168.1.1 1. web server yang akan digunakan adalah 192.168.1.11 2. server 192.168.1.1 dan 192.168.1.11 terinstall Linux dan Apache2

Ditanya:

saya pingin membuat webserver di server saya, server saya adalah 192.168.1.1. tetapi saya ingin agar ketika user/client mengakses http://192.168.1.1 maka yang sebenernya di akses adalah http://192.168.1.11, bagaimana caranya?

Jawab:

0. install apache2 dan aktifkan modul proxy, proxy_connect, proxy_http dan rewrite (opsional) di kedua ip itu

  • # aptitude install apache2
    # a2enmod proxy
    # a2enmod proxy_connect
    # a2enmod proxy_http
    # a2enmod rewrite
    # /etc/init.d/apache2 restart

1. sunting berkas /etc/apache2/sites-available/default di sisi server, dan tambahkan baris berikut.

  • server:~# pico /etc/apache2/sites-available/default
    ProxyRequests Off
    ProxyPreserveHost On
    <Proxy *> Order deny,allow
    Allow from all
    </Proxy>
    ProxyPass / http://192.168.1.11/
    <Location /> ProxyPassReverse /
    SetOutputFilter  proxy-html
    </Location>

2. sunting berkas /etc/apache2/sites-available/default di sisi webserver 192.168.1.11, dan tambahkan baris berikut: (opsional, boleh di laksanakan boleh tidak. walau tidak diberi tetep berjalan)

  • web01:~# pico /etc/apache2/sites-available/default
    ProxyRequests On
    ProxyVia On
    <Proxy *>
    Order deny,allow
    Deny from all
    Allow from 192.168.1.1
    </Proxy>

3. restart daemon apache di kedua sisi ip

  • # /etc/init.d/apache2 restart

4. cek dengan web browser dengan alamat http://192.168.1.1 maka yang akan nampak sebenere adalah http://192.168.1.11

5. ucapkan alhamdulillah…… gampang to?