1. 程式人生 > >php與nginx的連線

php與nginx的連線

最近在學習nginx,看了好多帖子終於安裝成功了。

經驗,首先不要用yum安裝,安裝完以後根本找不到安裝目錄在哪裡呀,然後安裝失敗以後會很不方便。

最終選擇了自己編譯安裝。

php-fpm打補丁

cd /usr/local/src

gzip -cd php-5.2.8-fpm-0.5.10.diff.gz  | patch -d php-5.2.8 -p1

下面是貼上過來的帖子內容;

1、下載php原始碼包

http://www.php.net/downloads.php

2 、安裝php

tar -xvf php-5.5.13.tar.bz2

cd php-5.5.13

./configure --prefix=/usr/local/php --with-config-file-path=/etc --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-opcache --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gettext --enable-mbstring --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-zlib --enable-zip --with-bz2 --with-readline --without-sqlite3 --without-pdo-sqlite --with-pear

出現錯誤: congigure error: xml2-config not found.

解決辦法:

執行命令: sudo yum install libxml2-devel

檢視是否成功: find / -name "xml2-config"

出現錯誤: congigure error: Cannot find OpenSSL's <evp.h>

解決辦法:

yum install openssl openssl-devel

ln -s /usr/lib64/libssl.so /usr/lib/

出現錯誤: configure: error: Please reinstall the BZip2 distribution

解決辦法:yum install bzip2 bzip2-devel

出現錯誤: configure: error: Please reinstall the libcurl distribution -easy.h should be in <curl-dir>/include/curl/

解決辦法:yum -y install curl-devel

configure: error: mcrypt.h not found. Please reinstall libmcrypt.

sudo yum install libmcrypt libmcrypt-devel mcrypt mhash

configure: error: Please reinstall readline - I cannot find readline.h
sudo yum install readline-devel

make 

make install 

新增 PHP 命令到環境變數

vim /etc/profile

在末尾加入

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

export PATH

要使改動立即生效執行

. /etc/profile 或 source /etc/profile

檢視環境變數

echo $PATH

檢視php版本

php -v 

PHP 5.5.13 (cli) (built: Jun 20 2014 11:11:26)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies

配置php-fpm

cd /usr/local/php/etc

cp php-fpm.conf.default php-fpm.conf

啟動php-fpm

sudo /usr/local/php/sbin/php-fpm

修改nginx的配置檔案(/etc/nginx/conf.d/default.conf)

location / {

root web根目錄;

index index.html index.htm index.php;

}

location ~ \.php$ {

root html;

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME web根目錄$fastcgi_script_name;

include fastcgi_params;

}

重啟nginx

/etc/init.d/nginx restart

在web根目錄下建立index.php

<?php echo phpinfo(); ?>

在瀏覽器中輸入http://ip/index.php檢視成功即可。

//注:根據自己的配置修改web根目錄即可,如我的為/usr/share/nginx/html。

如果啟動php-fpm出現錯誤: can not get uid for www,修改php-fpm.conf中user為nginx group為nginx

相關推薦

phpnginx連線

最近在學習nginx,看了好多帖子終於安裝成功了。 經驗,首先不要用yum安裝,安裝完以後根本找不到安裝目錄在哪裡呀,然後安裝失敗以後會很不方便。 最終選擇了自己編譯安裝。 php-fpm打補丁 cd /usr/local/src gzip -cd php-5.2.8-fpm-0.5.10.diff.g

apache php nginx php 的區別

css apach stc 必須 靜態文件 ast mod 解釋器 gin apache是通過mod_php來解析php nginx是通過php-fpm(fast-cgi)來解析php 1. PHP 解釋器是否嵌入 Web 服務器進程內部執行 mod_php 通過嵌入

php nginx 的兩種處理方式

code fpm lis pro socket http port fault 兩種 1.IP:Port 監聽方式 php-fpm docker pull PHP:2.4-alpine nginx.conf fastcgi_pass 127.0.0.1:9000; ph

Linux+Apache+Oracle+php Centos7下環境搭建 安裝Oracle 用yum安裝Apache 安裝php phporacle連線

因為學校課設的原因,在什麼伺服器都不懂的情況下,強行自己百度安裝LAOP,覺得網上教程太少,而且千篇一律很多都看不太懂,覺得人生太絕望了。寫一篇給小白用。我的Centos7是實體安裝的,虛擬機器應該也可以這樣安裝吧。 下面的順序是我安裝的順序,僅供參考。 一、安裝orac

PHPnginx之間的運行機制及其原理

知識點 kill clu 127.0.0.1 根據 serve https 知識 onf 一、普及Nginx與Php-fpm相關知識點 Nginx是什麽 Nginx ("engine x") 是一個高性能的HTTP和反向代理服務器,也是一個IMAP/POP3/SMT

php-fpm使用sock配置nginx配置sock連線

大部分預設的nginx連線方式為php-fpm監聽127.0.0.1:9000的方式,其實php-fpm還有一種socket連線配置,相比預設的速度更好(基於記憶體載入) location ~ .*\.(php|php5)?$ { fastcgi_pass unix:/dev/shm/php-fpm.s

Linux-rhel6.4 編譯安裝PHPNginxphp連接

linux php rhel 編譯安裝php 連接nginx 確定依賴包安裝gcc gcc-c++ libxml2 libxml2-devel bzip2 bzip2-devel libmcrypt libmcrypt-devel openssl openssl-devel libcurl

[Linux]PHP-FPMNGINX的兩種通訊方式

rom code pan ESS write 訪問權限 nec ner div 一、通過監聽TCP端口通訊 php-fpm.d/www.conf ; The address on which to accept FastCGI requests. ; Valid synt

php後端模式,php-fpm以及php-cgi, fast-cgi,以及nginx的關系

編寫 configure RKE -c gin 回來 靜態 子進程 出現 關於cgi是什麽,fast-cgi是什麽,php-cgi是什麽,fast-cgi是什麽,下面這篇講的很清楚: https://segmentfault.com/q/1010000000256516

LNMP架構介紹,MySQLPHP安裝,Nginx介紹

LNMP架構介紹 和LAMP不同的是,提供web服務的是Nginx 並且php是作為一個獨立服務存在的,這個服務叫做php-fpm Nginx直接處理靜態請求,動態請求會轉發給php-fpm MySQL重新安裝 MySQL是通過免編譯二進位制安裝包進行

PHP伺服器ApacheNginx的對比分析

  PHP伺服器Apache與Nginx的對比分析   Apache與Nginx的優缺點比較   1、nginx相對於apache的優點:   輕量級,同樣起web 服務,比apache 佔用更少的記憶體及資源   抗併發,nginx 處理請求是非同步非阻塞的,而apache 則是阻塞型的,在高併

NGINX連線php-fpm的兩種方式

使用socket方式連線Nginx優化php-fpm效能 使用socket方式連線Nginx優化php-fpm效能 Nginx連線fastcgi的方式有2種:TCP和unix domain socket 什麼是Unix domain socket?—— 維基百科 Unix domain

騰訊雲伺服器的配置部署(一):雲伺服器的連線、專案(phpphpMyAdmin)的部署

【前言】 最近在開發一個小程式,小程式的服務端打算用php來寫。小程式的wx.request必須是https請求,尋找對比了各種雲伺服器,發現騰訊為了推廣小程式,推出了“3元體驗騰訊雲小程式後端解決方案”活動,於是花3元買了騰訊雲伺服器(順帶的還有一臺雲資料庫

CGI 、FastCGI、PHP-CGI、PHP-FPM 定義以及nginx的應用關係

CGI common gateway interface,簡稱cgi,簡而言之就是一個介面,一種協議。它的作用就是幫助伺服器與語言通訊。 這裡以nginx和php為例,因為nginx和php的語言不通,因此需要一個溝通轉換的過程,而CGI就是這個溝通的協議。nginx伺服器在接受到瀏覽器傳遞過來的資料後,

CGI 、FastCGI、PHP-CGI、PHP-FPM 定義以及nginx的應用關系

example 反向代理 過大 溝通 訪問量 分配 路徑 bsp 允許 CGI common gateway interface,簡稱cgi,簡而言之就是一個接口,一種協議。它的作用就是幫助服務器與語言通信。 這裏以nginx和php為例,因為nginx和php的語言不通,

uwsignginx的長連線

nginx與客戶端預設是長連線,nginx與uwsgi的長連線需要設定keepalive和Http1.1,uwsgi與nginx的長連線需要設定http11-socket。 在設定了nginx upstream keepalive 為100的情況下。測試發現,長連線狀態下,uwsgi程序

javascript連線mysqlphp通過odbc連線任意資料庫

腦洞大開用javascript連結mysql,2個小時總算實現了,用到了odbc,後面又想到用php連結odbc連結資料庫,也實現了,就把案例放一下。 注意事項: 1.javascript連線mysql使用的是”new ActiveXObject“這個物件,這個物件只有IE

http 瀏覽器主動斷開連線 php主動斷開連線

摘要:事件起因是因為平時在開發中遇到的疑惑。一次是瀏覽器客戶端主動斷開了連線後,發現伺服器端的php指令碼還在執行,以至於不知道怎樣讓指令碼停下來。還有一次是有需求讓php指令碼主動斷開連線,然後後續指令碼繼續執行(一個耗時任務),所以有了這篇部落格。 一

PHP-FPM Nginx 的通信機制總結

實例 lin dbo 好的 pre man p s 協議棧 動態 PHP-FPM 介紹 CGI 協議與 FastCGI 協議 每種動態語言( PHP,Python 等)的代碼文件需要通過對應的解析器才能被服務器識別,而 CGI 協議就是用來使解釋器與服務器可以互相

FFmpeg總結(十二)用ffmpegnginx實現直播多路流並發播放

xxx 開源 conf ref itl rect arc med rtm 圖:撒哈拉沙漠 下載 nginx 和 nginx-rtmp源碼: http://nginx.org/download/nginx-1.5.10.tar.gz https://github.com/a