CentOS Nginx網站服務器搭建實例


Nginx是一款開源的高性能HTTP服務器和返向代理服務器。
 
 
下載、編譯、安裝模塊:
 
[root@localhost nginx-1.4.0]#wget http://nginx.org/download/nginx-1.4.0.tar.gz
 
[root@localhost nginx-1.4.0]#tar -xzf nginx-1.4.0.tar.gz -C /usr/src/
 
[root@localhost nginx-1.4.0]#yum -y install gcc pcre pcre-devel gcc openssl \
 
>openssl-devel gd gd-devel perl perl-ExtUtils-Embed
 
[root@localhost nginx-1.4.0]#cd /usr/src/nginx-1.4.0/
 
[root@localhost 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
 
[root@localhost nginx-1.4.0]#make && make install
 
 
 
各模塊介紹(碼字太多,百度求解吧):
 
 
 
服務器被安裝到/usr/local/nginx/目錄下
 
 
 
Nginx常用 管理命令:
 
 
 
[root@localhost nginx]# /usr/local/nginx/sbin/nginx  #啟動主程序
 
[root@daqijiance xyz]# /usr/local/nginx/sbin/nginx -c \
 
>/usr/local/nginx/conf/nginx.conf #指定配置文件啟動主程序
 
[root@localhost nginx]# /usr/local/nginx/sbin/nginx -s stop #關閉主程序
 
[root@localhost nginx]# /usr/local/nginx/sbin/nginx -s reload #重新加載設置
 
 
 
配置文件解析:
 
 
 
[root@daqijiance 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;
 
        }
 
    }
 
 
 
}
 
 
 
[root@localhost nginx]# mkdir /usr/local/nginx/html/{daqijiance,hebeigankong,yiyuanjiance}
 
[root@localhost nginx]# echo "daqijiance.com" > /usr/local/nginx/html/daqijiance/index.html
 
[root@localhost nginx]# echo "hebeigankong.com" > /usr/local/nginx/html/hebeigankong/index.html
 
[root@localhost nginx]# echo "yiyuanjiance.com" > /usr/local/nginx/html/yiyuanjiance/index.html
 
 
 
上面這個實例可以根據來路域名跳轉到不同的網站頁面,也就是多個網站綁定到了同一個IP,Nginx web服務器監聽80端口實現對不同來訪域名的解析,返回不同網站首頁。
 
其實這個測試一般通過修改DNS域名解析,如果沒有DNS域名解析,也可以通過修改hosts文件的方式實現。
 
[root@daqijiance xyz]# cat /etc/hosts
 
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
 
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
 
192.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
 
 
 
 
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM