下載地址:http://cn.PHP.net/downloads.phpphp
一、將下載的二進制包移動到/usr/local目錄,解壓縮文件包html
tar zxvf php-5.6.31.tar.gz
mysql
二、進入解壓的php文件夾下/usr/local/php-5.6.31,安裝依賴,編譯安裝
安裝依賴
apt-get install libxml2-dev libssl-dev libbz2-dev libcurl3-dev libdb5.1-dev libjpeg-dev libpng-dev libXpm-dev libfreetype6-dev libt1-dev libgmp3-dev libc-client-dev libldap2-dev libmcrypt-dev libmhash-dev freetds-dev libz-dev libmysqlclient15-dev ncurses-dev libpcre3-dev unixODBC-dev postgresql-server-dev-9.1 libsqlite-dev libaspell-dev libreadline6-dev librecode-dev libsnmp-dev libtidy-dev libxslt-dev libt1-dev
yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel jemalloc jemalloc-devel
nginx
yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel jemalloc jemalloc-devel
groupadd www useradd -g www -s /sbin/nologin -M www
cd /usr/local/test/upload/php-5.6.31
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/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參數說明:
""" 安裝路徑 """ --prefix=/usr/local/php56 \ """ php.ini 配置文件路徑 """ --with-config-file-path=/usr/local/php56/etc \ """ 優化選項 """ --enable-inline-optimization \ --disable-debug \ --disable-rpath \ --enable-shared \ """ 啓用 opcache,默認爲 ZendOptimizer+(ZendOpcache) """ --enable-opcache \ """ FPM """ --enable-fpm \ --with-fpm-user=www \ --with-fpm-group=www \ """ MySQL """ --with-mysql=mysqlnd \ --with-mysqli=mysqlnd \ --with-pdo-mysql=mysqlnd \ """ 國際化與字符編碼支持 """ --with-gettext \ --enable-mbstring \ --with-iconv \ """ 加密擴展 """ --with-mcrypt \ --with-mhash \ --with-openssl \ """ 數學擴展 """ --enable-bcmath \ """ Web 服務,soap 依賴 libxml """ --enable-soap \ --with-libxml-dir \ """ 進程,信號及內存 """ --enable-pcntl \ --enable-shmop \ --enable-sysvmsg \ --enable-sysvsem \ --enable-sysvshm \ """ socket & curl """ --enable-sockets \ --with-curl \ """ 壓縮與歸檔 """ --with-zlib \ --enable-zip \ --with-bz2 \ """ GNU Readline 命令行快捷鍵綁定 """ --with-readline
make cleansql
# make && make install
編譯安裝php時遇到virtual memory exhausted: Cannot allocate memory數據庫
php時日誌中有以下錯誤記錄:
virtual memory exhausted: Cannot allocate memory
make: *** [ext/fileinfo/libmagic/apprentice.lo] Error 1
api
將PHP安裝配置文件中加了引號中的配置
--disable-fileinfo作了上述修改後終於編譯安裝經過
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf cp /usr/local/test/upload/php-5.6.31/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm chmod +x /etc/init.d/php-fpm啓動 php-fpm
/usr/local/php/sbin/php-fpm
vi /etc/profile
瀏覽器
打開後,在文檔最下方添加以下配置:php7
export PATH=/usr/local/php/bin:$PATHapp
:wq!保存退出,執行以下命令,使更改生效
source /etc/profile
一、配置nginx支持php
cp /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.confbak #備份原有配置文件
vi /usr/local/nginx/conf/nginx.conf #編輯
user root; # nginx 用戶修改成root
:wq! #保存退出
cp /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.confbak #備份原有配置文件
vi /usr/local/nginx/conf/nginx.conf #編輯
index index.php index.html index.htm; #增長index.php
# pass the PHPscripts 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 $document_root$fastcgi_script_name;
include fastcgi_params;
}
#取消FastCGI server下location的註釋,並要注意fastcgi_param行的參數,/scripts改成$document_root 或者使用絕對路徑
/usr/local/nginx/sbin/nginx -t #檢查Nginx配置
/usr/local/nginx/sbin/nginx -s reload # 平滑重啓
二、PHP配置
在源碼包解壓文件裏複製出來
cp /usr/local/test/upload/php-5.6.31/php.ini-development /usr/local/php/etc/php.ini
vi /usr/local/php/etc/php.ini #編輯
date.timezone = PRC #在946行 把前面的分號去掉,改成date.timezone = PRC
expose_php = Off #在432行 禁止顯示php版本的信息
:wq! #保存退出
二、配置php-fpm
五、啓動php測試
#啓動
/usr/local/php/sbin/php-fpm
#測試php
cd /usr/local/nginx/html
vi test.php
添加以下內容:
<?php
echo phpinfo();
?>
:wq!保存退出。
瀏覽器輸入:http://XXXXXXXX/test.php
若是出現:PHP Version 5.6.31 界面,顯示php詳細的配置的界面,說明安裝正確
六、php重啓、中止
/usr/local/php/sbin/php-fpm
2.解壓Discuz_X3.2_SC_UTF8.zip,獲得3個文件夾(readme,upload,utility)
3.把upload裏全部文件複製到/usr/local/nginx/html/bbs/
4.chmod -R 777 /usr/local/nginx/htmlbbs 是新建的目錄
備註
nginx默認站點目錄是:/usr/local/nginx/sbin/nginx
php默認站點目錄是:/usr/local/php/sbin/php-fpm 權限設置:chown nginx.nginx/usr/local/nginx/html/ -R MySQL數據庫目錄是:/var/lib/mysql 權限設置:chown mysql.mysql -R /var/lib/mysql