字體:  

在 Centos 上使用 EPEL 建置 nginx proxy server 設定

plurk 發表於: 2010-3-03 11:07 來源: ADJ網路控股集團


環境: cnetos 5.2

用 yum 預設是找不到 nginx...不過可以先加入一個mirror

QUOTE:

#rpm -Uvh http://dl.fedoraproject.org/pub/epel/5/i386/epel-release-5-4.noarch.rpm

 

然後執行底下指令就可以了

QUOTE:

#yum install nginx.i386

 

裝好之後設定檔在 /etc/nginx

編輯 /etc/nginx/nginx.conf 

假設我們有個Domain: www.abcd.com.tw 要導到 111.222.333.444 的主機上

 

那麼範例如下:

QUOTE:

user              nginx;

error_log         /var/log/nginx/error.log;
pid               /var/run/nginx.pid;

 

events {
    worker_connections  1024;
}


http {
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    

    sendfile        on;
    tcp_nodelay     on;

    

    keepalive_timeout  32;

   

    upstream  abcd {
        server 111.222.333.444:80;
    }

 

    gzip  on;
    gzip_proxied        any;
    gzip_http_version   1.1;
    gzip_comp_level     2;
    gzip_types          text/plain text/html text/xml text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript application/atom+xml;

   

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-available/*;

}

 

接著再建立 /etc/nginx/sites-available/

新增一個檔案...取作domain的名稱比較好辨別 abcd ...檔案配置參考:

QUOTE:

server {
        listen 80;
        server_name  abcd.com.tw www.abcd.com.tw;

 

        location / {
                proxy_pass http://abcd;
                

        }

 

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
                root   /var/www/nginx-default;
        }

}

 

配置好之後...執行啟用...就可以啦~~~

QUOTE:

#service nginx start

 

實作過程中...發現使用 nginx 做 proxy server 無法讀取 httpd 的虛擬主機...所以如果有做虛擬主機的話...目的地的主機最好也是架在 nginx 上...

要不然就要再想別的方法來解決了~~~

 

參考網站:

http://tinux.no-ip.com/wordpress/?p=102

http://ithelp.ithome.com.tw/question/10009820

最新回復

poxpio at 2010-10-13 08:33:42
很不錯的教學…趕快學起來…
謝謝分享…