標籤:網站伺服器 Proxy 伺服器 local
Nginx是一款開源的高效能HTTP伺服器和返向Proxy 伺服器。
下載、編譯、安裝模組:
[[email protected] nginx-1.4.0]#wget http://nginx.org/download/nginx-1.4.0.tar.gz[[email protected] nginx-1.4.0]#tar -xzf nginx-1.4.0.tar.gz -C /usr/src/[[email protected] nginx-1.4.0]#yum -y install gcc pcre pcre-devel gcc openssl >openssl-devel gd gd-devel perl perl-ExtUtils-Embed[[email protected] nginx-1.4.0]#cd /usr/src/nginx-1.4.0/[[email protected] nginx-1.4.0]# ./configure --prefix=/usr/local/nginx > --with-ipv6 > --with-http_ssl_module > --with-http_realip_module > --with-http_addition_module > --with-http_dav_module > --with-http_flv_module > --with-http_mp4_module > --with-http_gzip_static_module > --with-http_perl_module > --with-mail > --with-mail_ssl_module[[email protected] nginx-1.4.0]#make && make install
各模組介紹(碼字太多,百度求解吧):
伺服器被安裝到/usr/local/nginx/目錄下
Nginx常用 管理命令:
[[email protected] nginx]# /usr/local/nginx/sbin/nginx #啟動主程式[[email protected] xyz]# /usr/local/nginx/sbin/nginx -c >/usr/local/nginx/conf/nginx.conf#指定設定檔啟動主程式[[email protected] nginx]# /usr/local/nginx/sbin/nginx -s stop#關閉主程式[[email protected] nginx]# /usr/local/nginx/sbin/nginx -s reload#重新載入設定
設定檔解析:
[[email protected] nginx]# cat conf/nginx.conf #設定使用者與組user nobody;#啟動子進程數worker_processes 1; #error_log logs/error.log;#error_log logs/error.log notice;#錯誤記錄檔檔案,以及記錄層級。error_log logs/error.log info;#進程號儲存檔案pid logs/nginx.pid; events {#每個進程可以處理的串連數,受系統檔案控制代碼的限制 worker_connections 1024;} http {include mime.types;#預設檔案類型 default_type application/octet-stream; log_format main ‘$remote_addr - $remote_user [$time_local] "$request" ‘ ‘$status $body_bytes_sent "$http_referer" ‘ ‘"$http_user_agent" "$http_x_forwarded_for"‘; #access_log logs/access.log main;#是否調用sendfile()進行資料複製,sendfile()複製資料是在核心層級完成的,所以會比一般的read、write更高效sendfile on;#開啟後的伺服器的回應標頭部資訊產生獨立的資料包發送,即一個回應標頭一個包 tcp_nopush on; #保持串連的逾時時間 keepalive_timeout 65; #是否啟用壓縮功能,將頁面壓縮後傳輸更節省流量 gzip on; #使用server定義虛擬機器主機server {#伺服器監聽的連接埠 listen 80;#訪問網域名稱 server_name daqijiance.com *.daqijiance.com;#編碼格式,如果網頁編碼於此設定不同,則將被自動轉碼 #charset koi8-r;#設定虛擬機器主機的訪問日誌 access_log logs/daqijiance.com..log main;#對url進行匹配 location / {#設定網頁的根路徑,使用的是相對路徑,html指的是處於Nginx安裝路徑下 root html/daqijiance;#首頁檔案,先找index.html,若沒有,再找index.htm index index.html index.htm index.aspx; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache‘s document root # concurs with nginx‘s one # location ~ /\.ht { deny all; } } # another virtual host using mix of IP-, name-, and port-based configuration # server { listen 80; server_name hbgk.com *.hbgk.com hebeigankong.com *.hebeigankong.com; location / { root html/hebeigankong; index index.html index.htm index.aspx; } } server { listen 80; server_name yiyuanjiance.com *.yiyuanjiance.com; location / { root html/yiyuanjiance/; index index.html index.htm index.aspx; } } # HTTPS server server { listen 443; server_name hbu.cn hbu.edu.cn *.hbu.cn *.hbu.edu.cn; ssl on; ssl_certificate cert.pem; ssl_certificate_key cert.key; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root html/hbu; index index.html index.htm index.aspx; } } } [[email protected] nginx]# mkdir /usr/local/nginx/html/{daqijiance,hebeigankong,yiyuanjiance}[[email protected] nginx]# echo "daqijiance.com" > /usr/local/nginx/html/daqijiance/index.html[[email protected] nginx]# echo "hebeigankong.com" > /usr/local/nginx/html/hebeigankong/index.html[[email protected] nginx]# echo "yiyuanjiance.com" > /usr/local/nginx/html/yiyuanjiance/index.html
上面這個執行個體可以根據來路網域名稱跳轉到不同的網站頁面,也就是多個網站綁定到了同一個IP,Nginx web伺服器監聽80連接埠實現對不同來訪網域名稱的解析,返回不同網站首頁。
其實這個測試一般通過修改DNS網域名稱解析,如果沒有DNS網域名稱解析,也可以通過修改hosts檔案的方式實現。
[[email protected] xyz]# cat /etc/hosts127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4::1 localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.50.157 www.daqijiance.com www.hebeigankong.com www.yiyuanjiance.com daqijiance.com hebeigankong.com yiyuanjiance.com hbgk.com hbu.cn hbu.edu.cn www.hbu.cn www.hbu.edu.cn
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/44/55/wKioL1Pgo07RbRAdAADHBHof7-s930.jpg" title="圖片1.png" alt="wKioL1Pgo07RbRAdAADHBHof7-s930.jpg" />
本文出自 “noogel” 部落格,請務必保留此出處http://noogel.blog.51cto.com/9222825/1536050