自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Nginx+FastCGI編譯部署過程詳述

開發(fā) 開發(fā)工具
最近,因?yàn)楣ぷ鞯男枰?,我們用Nginx+FastCGI部署了一個(gè)高性能的Web服務(wù)器。在部署的過程中,發(fā)現(xiàn)很少有文章將整個(gè)編譯部署的過程講清楚的。下面詳細(xì)介紹編譯部署的過程。

最近,因?yàn)楣ぷ鞯男枰?,我們用Nginx+FastCGI部署了一個(gè)高性能的Web服務(wù)器。在部署的過程中,我們遇到了很多問題,也參考了一些文章,發(fā)現(xiàn)很少有文章將整個(gè)編譯部署的過程講清楚的。鑒于此,根據(jù)我們項(xiàng)目組成功部署Nginx+FastCGI的經(jīng)驗(yàn),我寫下了這篇文章,可供相關(guān)項(xiàng)目的開發(fā)人員參考。

[[191633]]

首先,對于為什么要用Nginx+FastCGI部署高性能Web服務(wù)器,我就不贅述了,網(wǎng)上有很多的文章。

下面詳細(xì)介紹編譯部署的過程。

1. 軟件準(zhǔn)備

(1) Linux機(jī)器

所有的程序都是部署在Linux操作系統(tǒng)上面的,因此建議要有一臺(tái)專門的機(jī)器來安裝Linux。我們使用的Linux是CentOS 7,大家可根據(jù)項(xiàng)目組的實(shí)際情況來選擇Linux的版本。

(2) Nginx源碼包

到Nginx的官網(wǎng)(http://nginx.org/en/download.html)上去下載***的源碼包,我們使用的是nginx-1.11.9.tar.gz。

(3) spawn_fastcgi源碼包

到網(wǎng)站https://github.com/lighttpd/spawn-fcgi/releases 上去下載源碼包spawn-fcgi-1.6.4.tar.gz。

(4) FastCGI源碼包

在百度上搜索并下載源碼包fcgi-2.4.1-SNAP-0910052249.tar.gz,也可到該網(wǎng)站上去下載:

http://www.filewatcher.com/d/Gentoo/distfiles/Other/fcgi-2.4.1-SNAP-0910052249.tar.gz.614929.html。

2. 編譯安裝

1)編譯安裝Nginx

***步,執(zhí)行tar zxvf nginx-1.11.9.tar.gz 命令解壓文件到當(dāng)前目錄下(具體的安裝包名根據(jù)你下載的Nginx包進(jìn)行確定)。

第二步,進(jìn)入解壓后的nginx-1.11.9目錄執(zhí)行./configure –prefix=/usr/local/nginx命令。

第三步,執(zhí)行make命令。

第四步,執(zhí)行make install命令。

2)編譯安裝spawn_fastcgi

***步,執(zhí)行tar zxvf spawn-fcgi-1.6.4.tar.gz 命令解壓文件到當(dāng)前目錄下。

第二步,進(jìn)入spawn-fcgi-1.6.4目錄執(zhí)行./configure命令。

第三步,執(zhí)行make命令。

第四部,將文件spawn-fcgi拷貝到/usr/local/nginx/sbin目錄下(拷貝之前如果沒有這個(gè)目錄,請手動(dòng)創(chuàng)建)。

3)編譯安裝FastCGI

***步,執(zhí)行tar jxvf fcgi-2.4.1-SNAP-0910052249.tar.gz 命令解壓文件到當(dāng)前目錄下。

第二步,進(jìn)入fcgi-2.4.1-SNAP-0910052249目錄執(zhí)行./configure命令。

第三步,執(zhí)行make命令。

第四步,執(zhí)行make install命令。

3. 測試程序編寫及編譯

我們編寫了如下的測試程序test.c,代碼如下:

  1. #include <stdio.h> 
  2. #include <fcgi_stdio.h> 
  3. #include <stdlib.h> 
  4.  
  5. int main() 
  6.     int count = 0
  7.     while (FCGI_Accept() >= 0) 
  8.    { 
  9.         printf("Content-type: text/html\r\n" 
  10.                 "\r\n" 
  11.                 "" 
  12.                 "FastCGI Hello!" 
  13.                 "Request number %d running on host%s " 
  14.                 "Process ID: %d\n", ++count, getenv("SERVER_NAME"), getpid()); 
  15.     } 
  16.     return 0; 

使用“gcc -g -o test test.c -lfcgi”命令編譯生成可執(zhí)行文件test,然后將test拷貝到/usr/local/nginx/sbin目錄下。

4. Nginx配置

在/usr/local/nginx/conf/nginx.conf配置文件中的http節(jié)點(diǎn)的server子節(jié)點(diǎn)下添加如下配置:

  1. location ~ /test.cgi$ { 
  2.          fastcgi_pass 127.0.0.1:8088; 
  3.          fastcgi_index index.cgi; 
  4.          fastcgi_param SCRIPT_FILENAME fcgi$fastcgi_script_name; 
  5.  
  6.          include fastcgi_params; 
  7.         } 

5. 服務(wù)端啟動(dòng)

(1) 啟動(dòng)Nginx服務(wù)器

執(zhí)行/usr/local/nginx/sbin/nginx命令啟動(dòng)Nginx。

說明:

1)可用ps -ef | grep nginx命令查看Nginx啟動(dòng)是否成功,正常情況下為兩個(gè)進(jìn)程(一個(gè)主進(jìn)程一個(gè)輔進(jìn)程),示例如下:

  1. # ps -ef | grep nginx 
  2. root      2886     1  0 May15 ?        00:00:00 nginx: master process ./nginx 
  3. nobody    3406  2886  0 May15 ?        00:00:00 nginx: worker process 

2)可用“kill -HUP 主進(jìn)程id ”命令(如:kill -HUP 1)重新加載配置文件。

3)可用“kill -QUIT 主進(jìn)程id” 命令(如:kill -QUIT 1)關(guān)閉Nginx。

(2) 啟動(dòng)spawn-fcgi管理進(jìn)程

執(zhí)行“/usr/local/nginx/sbin/spawn-fcgi -a 127.0.0.1 -p 8088 -f /usr/local/nginx/sbin/test”命令啟動(dòng)進(jìn)程。

說明:

1)可用“netstat -an|grep 8088”命令檢查8088端口是否啟動(dòng)監(jiān)聽。

2)可用“ps -ef|grep test”命令檢查test進(jìn)程是否啟動(dòng)成功。

6. 使用Web前端訪問test

在瀏覽器中輸入U(xiǎn)RL地址“http://127.0.0.1/test.cgi”即可訪問到test的輸出。

【本文是51CTO專欄作者周兆熊的原創(chuàng)文章,作者微信公眾號(hào):周氏邏輯(logiczhou)】

戳這里,看該作者更多好文

責(zé)任編輯:趙寧寧 來源: 51CTO專欄
相關(guān)推薦

2015-06-10 16:05:26

NginxFastcgi

2013-05-28 11:04:42

Android開發(fā)Android編譯源碼編譯

2010-03-29 16:58:41

Nginx FastC

2010-03-29 10:38:36

Nginx配置

2017-12-28 10:22:28

NginxFastCGIPHP-fpm

2013-04-25 10:01:35

Nginx

2009-11-27 10:18:16

Cisco路由器手冊

2010-09-16 17:53:12

Java編譯

2019-09-04 08:54:48

API網(wǎng)關(guān)Nginx

2010-03-29 10:50:04

安裝Nginx

2022-05-18 07:58:21

Linux程序編譯代碼

2010-08-31 16:42:52

配置交換機(jī)DHCP服務(wù)

2010-07-12 14:41:35

UDP協(xié)議

2010-09-26 14:16:26

DHCP協(xié)議應(yīng)用

2010-09-01 17:11:01

DHCP中繼代理

2010-05-06 15:00:58

集群負(fù)載均衡

2009-04-27 15:34:07

2021-01-19 11:40:40

Linux代碼程序編譯

2022-06-09 09:20:40

Linux語言編寫代碼

2010-05-07 14:27:16

IPVS負(fù)載均衡
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)