Linux下php7.0.6+nginx環境編譯安裝

開看linux服務器 是否開啓了防火牆 可以先關閉防火牆
(1): service iptables stop 


 設置防火牆參考博客:http://www.cnblogs.com/JemBai/archive/2009/03/19/1416364.html


1:nginx 
 安裝c c++編譯器 yum install -y gcc gcc-c++
  
 需要下載prce用來支持nginx 僞靜態
 下載地址:https://sourceforge.net/projects/pcre/files/pcre/
 或者:yum install pcre-devel zlib-devel openssl-devel  


2:安裝php
 php 推薦使用mysqlnd鏈接mysql數據庫 編譯之前 並不需要安裝mysql數據庫


 ./configure --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd  加上即可


 依賴包
 yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel


./configure --prefix=/usr/local/php  --with-freetype-dir --with-gd --with-curl --with-openssl  --with-zlib --enable-libxml --enable-xml  --enable-zip --enable-opcache --enable-sysvsem --enable-mbstring --enable-mysqlnd  --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --enable-fpm --with-fpm-user=www --with-fpm-group=www


默認編譯的配置文件是:/usr/local/php/lib/php.ini

如果你想更改php.ini的位置 只需要加上:--with-config-file-path=/usr/local/php/etc/ 就行了


make && make install


配置php
 複製配置文件
   #cp php.ini-development /usr/local/php/lib/php.ini
   #cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
   #cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
 
 啓動php-fpm
  /usr/local/php/sbin/php-fpm

 也可以加上配置文件路徑:/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf

 停止php-fpm pkill php 


 簡單配置nginx
   vi /usr/local/nginx/conf/nginx.conf
     
   找到server 中修改一下
       location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
 然後在  root   /usr/local/www;  自己設定一下項目的目錄

 然後建立一個 index.php 

配置php.ini

1:配置 php模塊加載路徑

   extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012"

2:啓用opcache

  zend_extension=opcache.so
 opcache.enable=1
 opcache.enable_cli=1
 opcache.file_cache=/tmp

3:安裝redis擴展

wget -c https://github.com/phpredis/phpredis/archive/php7.zip
unzip php7.zip


cd phpredis-php7
/usr/local/php7/bin/phpize
./configure --with-php-config=/usr/local/php7/bin/php-config
make
make install
cd ..


/usr/local/php/etc/php.ini
中加入
extension=redis.so


編譯的時候問題解決:

  undefined reference to `libiconv_open'  undefined reference to `libiconv'

解決方法:
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
tar -zxvf libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/libiconv
make
make install

再檢查php,指定 iconv的位置  --with-iconv=/usr/local/libiconv

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章