1. 程式人生 > >Linux中用Nginx和FTP搭建WS幸運飛艇平臺搭建圖片服務器

Linux中用Nginx和FTP搭建WS幸運飛艇平臺搭建圖片服務器

types 密碼庫 文件的 user 編譯安裝 防火 linux zxvf 虛擬機

一、需要的組件WS幸運飛艇平臺搭建論壇:haozbbs.com Q1446595067

圖片服務器兩個服務:
Nginx(圖片訪問):

1、http服務:可以使用nginx做靜態資源服務器。也可以使用apache。推薦使用nginx,效率更高。

2、反向代理 實現 負載均衡
ftp服務(圖片上傳):

使用linux做服務器,在linux中有個ftp組件vsftpd。
二、Nginx服務器搭建
1.安裝Nginx

要求安裝vmware虛擬機。

Linux:CentOS6.4(32)

Nginx:1.8.0

Vsftpd:需要在線安裝。

虛擬機以及Linux安裝很簡單此處略。

Linux的局域網IP為:192.168.1.110

修改Linux的IP並立即生效的命令:
[java] view plain copy

#切換root管理員用戶  
[root@localhost ~]# su  
password   
#設置本機IP並立即生效     
[root@localhost ~]# ifconfig eth0 192.168.1.110 netmask 255.255.255.0  

1.1、nginx安裝環境

nginx是C語言開發,建議在linux上運行,本教程使用Centos6.5作為安裝環境。

n gcc

     安裝nginx需要先將官網下載的源碼進行編譯,編譯依賴gcc環境,如果沒有gcc環境,需要安裝gcc:yum install gcc-c++

n PCRE

     PCRE(PerlCompatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,所以需要在linux上安裝pcre庫。

[java] view plain copy

[root@localhost ~]#yum install -y pcre pcre-devel  

註:pcre-devel是使用pcre開發的一個二次開發庫。nginx也需要此庫。

n zlib

     zlib庫提供了很多種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,所以需要在linux上安裝zlib庫。

[java] view plain copy

[root@localhost ~]#yum install -y zlib zlib-devel  

n openssl

     OpenSSL是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、常用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程序供測試或其它目的使用。

     nginx不僅支持http協議,還支持https(即在ssl協議上傳輸http),所以需要在linux安裝openssl庫。

[java] view plain copy

[root@localhost ~]#yum install -y openssl openssl-devel  

1.2、把nginx安裝包nginx-1.8.0.tar.gz上傳到服務器。

在secureCRT打開sftp會話框,上傳文件

使用put/get命令 或者直接拖拽文件
1.3、解壓縮(在安裝包所在目錄執行)

[java] view plain copy

[root@localhost ~]# tar -zxvf nginx-1.8.0.tar.gz  

在root@bogon nginx-1.8.0目錄下

./configure && make && make install //在這裏吃過虧

1.5、編譯安裝

編譯:
[java] view plain copy

[root@localhost nginx-1.8.0]# make  

安裝:

[java] view plain copy

[root@localhost nginx-1.8.0]# make  install  

安裝成功以後進入安裝目錄(創建makedir時指定的”--prefix=/usr/local/nginx \“)

[java] view plain copy

[root@localhost nginx-1.8.0]# cd /usr/local/nginx/  

2、nginx運行
2.1、啟動nginx

[java] view plain copy

[root@localhost nginx]# cd sbin  
[root@localhost sbin]# ./nginx  

2.2、關閉
[java] view plain copy

[root@localhost sbin]# ./nginx -s stop  

2.3、重新加載配置文件
[java] view plain copy

[root@localhost sbin]# ./nginx -s reload  

2.4、關閉防火墻
[java] view plain copy

[root@localhost ]# /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT    
[root@localhost ]# /etc/init.d/iptables save    
[root@localhost ]# /etc/init.d/iptables restart   

2.5、訪問nginx服務

順便給新手推薦一個無意中發現的Java網站,感覺超級適合入門級的Java開發,

基礎知識寫的挺好,練手項目也很豐富很,基本都是文檔形式指導,簡明易懂,不像視頻一樣費時間。

地址是http://how2j.cn?p=24192

3、關於圖片服務器配置

進入配置文件目錄
[java] view plain copy

cd /usr/local/nginx/conf/  

nginx的默認配置文件nginx.config
[java] view plain copy

#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        on;  
    #tcp_nopush     on;  

    #keepalive_timeout  0;  
    keepalive_timeout  65;  

    #gzip  on;  

    server {  
        listen       80;  
        server_name  localhost;  

        #charset koi8-r;  

        #access_log  logs/host.access.log  main;  

        location / {  
            root   html;  
            index  index.html index.htm;  
        }  

        #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       8000;  
    #    listen       somename:8080;  
    #    server_name  somename  alias  another.alias;  

    #    location / {  
    #        root   html;  
    #        index  index.html index.htm;  
    #    }  
    #}  

    # HTTPS server  
    #  
    #server {  
    #    listen       443 ssl;  
    #    server_name  localhost;  

    #    ssl_certificate      cert.pem;  
    #    ssl_certificate_key  cert.key;  

    #    ssl_session_cache    shared:SSL:1m;  
    #    ssl_session_timeout  5m;  

    #    ssl_ciphers  HIGH:!aNULL:!MD5;  
    #    ssl_prefer_server_ciphers  on;  

    #    location / {  
    #        root   html;  
    #        index  index.html index.htm;  
    #    }  
    #}  

}  

配置圖片服務器

方法一、在配置文件server{}中location /{} 修改配置:
[java] view plain copy

 #默認請求  
location / {  
   root  /home/ftpuser/www;#定義服務器的默認網站根目錄位置  
   index index.html index.php index.htm;#定義首頁索引文件的名稱  
}  

其中:/home/ftpuser/www;為創建FTP服務賬戶ftpuser的根目錄下的www目錄

方法二、在http{}內配置新服務
[java] view plain copy

server {  
        listen       8080;  
        server_name  localhost;  

        #charset utf-8;  

        #access_log  logs/host.access.log  main;  

        #默認請求  
        location / {  
            root  /home/ftpuser/www;#定義服務器的默認網站根目錄位置  
            index index.html index.php index.htm;#定義首頁索引文件的名稱  
           }  
        }  

因為需要開始端口號8080,所以要在防火墻中開啟8080端口
[java] view plain copy

[root@localhost ]# /sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT    
[root@localhost ]# /etc/init.d/iptables save    
[root@localhost ]# /etc/init.d/iptables restart   

三、FTP服務的安裝與啟動
1、安裝vsftpd組件

vsftpd組件為Linux的FTP服務組件,安裝方式為在線安裝。

[root@localhost ~]# yum -y install vsftpd

安裝完後,有/etc/vsftpd/vsftpd.conf 文件,是vsftp的配置文件。
2、添加一個ftp用戶

此用戶就是用來登錄ftp服務器用的。
[java] view plain copy

[root@localhost ~]# useradd ftpuser  

這樣一個用戶建完,可以用這個登錄,記得用普通登錄不要用匿名了。登錄後默認的路徑為 /home/ftpuser.

為這個ftp賬戶添加密碼

Linux中用Nginx和FTP搭建WS幸運飛艇平臺搭建圖片服務器