引數配置./configure --prefix=/usr/local/php7 \
--with-config-file-path=/usr/local/php7/etc \
--with-apxs2=/usr/local/apache2/bin/apxs \
指定apache的apxs,會在其modules中生成libphp7.so
--with-mysql=mysqlnd \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-openssl \
--with-iconv-dir \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir \
--with-curl \
--with-mcrypt \
--with-mhash \
--with-mcrypt \
--without-pear \
--with-gd \
--with-xmlrpc \
--enable-mysqlnd \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--enable-gd-native-ttf \
--enable-pcntl \
--enable-sockets \
--enable-zip \
--enable-soap \
如果報錯,直接安裝需要的擴充套件包
sudo apt-get install libopenssl-dev libcurl4-openssl-dev libjpeg-dev ...
配置通過了,開始編譯安裝 make && sudo make install
拷貝配置檔案 sudo cp php.ini-development /usr/local/php7/etc/php.ini
配置apache解析php指令碼,因為已經在其modules目錄生成了libphp7.so,只需在配置檔案中匯入即可:
loadmodule php7_module modules/libphp7.so
配置php.ini,使其可以通過mysqli連線mysql資料庫
因為是通過mysqlnd驅動的,不需要在extension=mysqli,直接找到[mysqli]部分進行配置即可:
mysqli.default_socket=/tmp/mysql.sock
啟動mysql(service mysql start)後,如果只有/var/run/mysqld/mysqld.sock沒有/tmp/mysql.sock,
則需要建立個軟連線:ln -s /var/run/mysqld/mysqld.sock /tmp/mysql.sock
mysqli.default_host='localhost' mysqli.default_user='root'
如果要使用pdo_mysql,同樣 pdo_mysql.default_socket=/tmp/mysql.sock
測試一下,在apache文件根目錄建立info.php 和 test.php
info.php瀏覽器訪問 .../info.php可以看到<?php
phpinfor();
?>
// 物件導向方法
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
if ($mysqli->connect_error)
echo 「connect successfully」;
//面向過程方法
$conn = mysqli_connect($host, $servername, $username, $password);
// 檢測連線
if (!$conn)
echo "connected successfully";
?>
瀏覽器訪問 .../test.php
warning: mysqli::__construct(): (hy000/2002): permission denied in/usr/local/apache2/htdocs/test.phpon line3
connection error: permission denied
將上面的localhost 改成 127.0.0.1 結果:connected successfully 。。。
//pdo方法
<?php
$servername = "127.0.0.1";
$username = "username";
$password = "password";
trycatch(pdoexception $e
)
php7編譯安裝
因為編譯安裝php前,它所依賴的各種庫和包可能還未被安裝,所以先yum安裝php中常用的必須庫 yum install libxml2 libxml2 devel openssl openssl devel bzip2 bzip2 devel libcurl libcurl devel libjpe...
編譯安裝php7
解壓安裝 tar zxvf php 7.0.2.tar.gz cd php 7.0.2 首先檢視安裝幫助 configure help configure prefix usr local php with curl with freetype dir with gd with gettext wi...
ubuntu14 04編譯安裝PHP7
解壓 tar zxvf php 7.0.16.tar.gz 進行配置之前安裝必要的包,否則會出現下面的一些問題 配置 編譯 安裝 修改配置檔案 cp php.ini production usr local php etc php.ini 使用php fpm方式執行的設定 配置php fpm cd ...