當前位置:編程學習大全網 - 源碼下載 - 如何在系統安裝ARGB

如何在系統安裝ARGB

nginx php-fpm安裝配置

nginx本身不能處理PHP,它只是個web服務器,當接收到請求後,如果是php請求,則發給php解釋器處理,並把結果返回給客戶端。

nginx壹般是把請求發fastcgi管理進程處理,fascgi管理進程選擇cgi子進程處理結果並返回被nginx

本文以php-fpm為例介紹如何使nginx支持PHP

壹、編譯安裝php-fpm

什麽是PHP-FPM

PHP-FPM是壹個PHP FastCGI管理器,是只用於PHP的,可以在 2.php.net/distributions/php-5.4.7.tar.gztar zvxf php-5.4.7.tar.gz

cd php-5.4.7./configure --prefix=/usr/local/php ?--enable-fpm --with-mcrypt \--enable-mbstring --disable-pdo --with-curl --disable-debug ?--disable-rpath \--enable-inline-optimization --with-bz2 ?--with-zlib --enable-sockets \--enable-sysvsem --enable-sysvshm --enable-pcntl --enable-mbregex \--with-mhash --enable-zip --with-pcre-regex --with-mysql --with-mysqli \--with-gd --with-jpeg-dir

make all install

舊版手動打補丁php-fpm安裝(舊版程序已經沒有了,大家新版的吧,這裏做個展示)

wget 2.php.net/get/php-5.2.17.tar.gz

wget tl -enable-sockets ?-with-bz2 -with-curl -with-curlwrappers\

-enable-mbregex -with-gd -enable-gd-native-ttf -enable-zip -enable-soap -with-iconv -enable-bcmath\

-enable-shmop -enable-sysvsem -enable-inline-optimization -with-ldap -with-ldap-sasl -enable-pdo\

-with-pdo-mysql

make all install

以上兩種方式都可以安裝php-fpm,安裝後內容放在/usr/local/php目錄下

以上就完成了php-fpm的安裝。

下面是對php-fpm運行用戶進行設置

cd /usr/local/php

cp etc/php-fpm.conf.default etc/php-fpm.conf

vi etc/php-fpm.conf

修改

user = www-data

group = www-data

如果www-data用戶不存在,那麽先添加www-data用戶

groupadd www-data

useradd -g www-data www-data

二、編譯安裝nginx

然後nginx:

nginx可以使用各平臺的默認包來安裝,本文是介紹使用源碼編譯安裝,包括具體的編譯參數信息。

正式開始前,編譯環境gcc g++ 開發庫之類的需要提前裝好,這裏默認妳已經裝好。

ububtu平臺編譯環境可以使用以下指令

1

2

apt-get install build-essential

apt-get install libtool

centos平臺編譯環境使用如下指令

安裝make:

1

yum -y install gcc automake autoconf libtool make

安裝g++:

1

yum install gcc gcc-c++

下面正式開始

---------------------------------------------------------------------------

壹般我們都需要先裝pcre, zlib,前者為了重寫rewrite,後者為了gzip壓縮。

1.選定源碼目錄

可以是任何目錄,本文選定的是/usr/local/src

1

cd /usr/local/src

2.安裝PCRE庫

ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/?下載最新的 PCRE 源碼包,使用下面命令下載編譯和安裝 PCRE 包:

1

2

3

4

5

6

7

cd /usr/local/src

wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.37.tar.gz

tar -zxvf pcre-8.37.tar.gz

cd pcre-8.34

./configure

make

make install

3.安裝zlib庫

e to nginx! 則表示 Nginx 已經安裝並運行成功。

-----------------------------------------------------

到這裏nginx就安裝完成了,如果只是處理靜態html就不用繼續安裝了

如果妳需要處理php腳本的話,還需要安裝php-fpm。

下面安裝排錯

附:可能遇到的錯誤和壹些幫助信息

1.1編譯pcre錯誤

1

2

3

4

5

libtool: compile: unrecognized option `-DHAVE_CONFIG_H'

libtool: compile: Try `libtool --help' for more information.

make[1]: *** [pcrecpp.lo] Error 1

make[1]: Leaving directory `/usr/local/src/pcre-8.34'

make: *** [all] Error 2

解決辦法:安裝g++,別忘了重新configure

1

2

3

4

5

apt-get install g++

apt-get install build-essential

make clean

./configure

make

1.2 make出錯

1

2

3

4

5

make:?***?No?rule?to?make?target?`build',?needed?by?`default'.?Stop.

./configure:?error:?SSL?modules?require?the?OpenSSL?library.

You?can?either?do?not?enable?the?modules,?or?install?the?OpenSSL?library

into?the?system,?or?build?the?OpenSSL?library?statically?from?the?source

with?nginx?by?using?--with-openssl=<path>?option.

按照第4步的安裝方法或

ubuntu下

1

2

apt-get?install?openssl

apt-get?install?libssl-dev

centos下

1

yum -y install openssl openssl-devel

2.nginx編譯選項

make是用來編譯的,它從Makefile中讀取指令,然後編譯。

make install是用來安裝的,它也從Makefile中讀取指令,安裝到指定的位置。

configure命令是用來檢測妳的安裝平臺的目標特征的。它定義了系統的各個方面,包括nginx的被允許使用的連接處理的方法,比如它會檢測妳是不是有CC或GCC,並不是需要CC或GCC,它是個shell腳本,執行結束時,它會創建壹個Makefile文件。nginx的configure命令支持以下參數:

--prefix=path 定義壹個目錄,存放服務器上的文件?,也就是nginx的安裝目錄。默認使用?/usr/local/nginx。

--sbin-path=path?設置nginx的可執行文件的路徑,默認為 ?prefix/sbin/nginx.

--conf-path=path?設置在nginx.conf配置文件的路徑。nginx允許使用不同的配置文件啟動,通過命令行中的-c選項。默認為prefix/conf/nginx.conf.

--pid-path=path?設置nginx.pid文件,將存儲的主進程的進程號。安裝完成後,可以隨時改變的文件名 , 在nginx.conf配置文件中使用 PID指令。默認情況下,文件名 為prefix/logs/nginx.pid.

--error-log-path=path?設置主錯誤,警告,和診斷文件的名稱。安裝完成後,可以隨時改變的文件名 ,在nginx.conf配置文件中 使用 的error_log指令。默認情況下,文件名 為prefix/logs/error.log.

--pilation”(1.1.12中, pcre_jit指令)。

--with-zlib=path?—設置的zlib庫的源碼路徑。要下載從 zlib(版本1.1.3 - 1.2.5)的並解壓。其余的工作是Nginx的./ configure和make完成。ngx_/sourceforge/mcrypt/libmcrypt-2.5.8.tar.gz

tar -zxvf libmcrypt-2.5.8.tar.gz

cd /usr/local/src/libmcrypt-2.5.8

./configure --prefix=/usr/local

make

make install

7.?php-fpm 5.4.7 如何關閉 重啟?

php 5.4.7 下的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,需要使用信號控制:

master進程可以理解以下信號

INT, TERM 立刻終止 QUIT 平滑終止 USR1 重新打開日誌文件 USR2 平滑重載所有worker進程並重新載入配置和二進制模塊

示例:

php-fpm 關閉:

kill -INT `cat /usr/local/php/var/run/php-fpm.pid`

php-fpm 重啟:

kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`

查看php-fpm進程數:

ps aux | grep -c php-fpm

8.命令行下執行php,提示找不到命令

-bash: /usr/bin/php: No such file or directory

vi /etc/profile

在文件底部增加壹行配置

export PATH=/usr/local/php/bin:$PATH

保存退出

source /etc/profile

附加pathinfo配置

location ~ ^(.+\.php)(.*)$ {

fastcgi_split_path_info ? ^(.+\.php)(.*)$;

fastcgi_param SCRIPT_FILENAME /path/to/php$fastcgi_script_name;

fastcgi_param PATH_INFO ? $fastcgi_path_info;

  • 上一篇:不發幣、不碰ICO,螞蟻鏈靠什麽引發最大規模產業上鏈潮?
  • 下一篇:Java培訓出來以後可以做些什麽?
  • copyright 2024編程學習大全網