天天看點

linux下PHP7環境搭建

作業系統:Centos 7

Mysql:5.7.11

Apache:2.4.18

PHP:7.0.4

下載下傳連結:http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.11.tar.gz

[plain] view plain copy

shell> groupadd mysql  

shell> useradd -r -g mysql -s /bin/false mysql  

shell> tar zxvf mysql-5.7.11.tar.gz  

shell> cd mysql-5.7.11  

shell> cmake .  

shell> make  

shell> make install  

注意:從Mysql5.7開始,mysql預設安裝後不再是空密碼,而是生成一個随機密碼,除非初始化時指定--initialize-insecure。

所有使用者擁有對于MySQL預設安裝test資料庫的通路權限(即使沒有授予權限)為了安全考慮5.7版本中不在有test資料庫。

更為重要的是,MySQL 5.7版本提供了更為簡單SSL安全通路配置,并且預設連接配接就采用SSL的加密方式

shell> cd /usr/local/mysql  

shell> chown -R mysql .  #修改目錄所有者為mysql  

shell> chgrp -R mysql .  #修改目錄所屬組為mysql  

shell> bin/mysqld --initialize-insecure --user=mysql --datadir=/data/mysql  #初始化mysql,初始化為空,資料庫存放目錄指定為/data/mysql  

shell> bin/mysql_ssl_rsa_setup #啟動ssl加密方式連接配接  

shell> chown -R root .   #修改目錄所有者為root  

shell> chown -R mysql /data/mysql  #修改資料庫目錄所有者為mysql  

隻需要将mysql安裝目錄下的mysql.server複制過去就OK了。

shell> cp support-files/mysql.server /etc/init.d/mysql.server  

shell> service mysql start   #啟動服務  

下載下傳連結:http://mirrors.hust.edu.cn/apache//httpd/httpd-2.4.18.tar.gz

shell> ./configure --prefix=/usr/local/apahche \  

--enable-so #動态共享對象,可實作子產品動态生效 \  

--enable-rewrite #啟用Rewrite功能 \  

--enable-ssl #支援SSL/TLS,可以實作https通路 \  

--enable-deflate #支援壓縮 \  

shell> /usr/local/apache/bin/apachectl start    #啟動  

shell> /usr/local/apache/bin/apachectl stop     #停止  

shell> /usr/local/apache/bin/apachectl restart  #重新開機  

shell> cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd   #設定為系統服務  

shell> ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S80httpd   #在啟動級别3中自啟動  

shell> service httpd restart   #通過服務來重新開機apache  

在用戶端浏覽器上輸入伺服器的IP位址,看是否能正常打開網頁。

configure: error: APR not found.

解決方法: 安裝對應依賴庫

shell> yum install apr apr-util-devel  

configure: error: pcre-config for libpcre not found.

解決方法:安裝對應依賴庫

yum install pcre pcre-devel  

啟動apache時報:AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 10.44.13.173. Set the 'ServerName' directive globally to suppress this message

解決方法:修改配置檔案httpd.conf設定ServerName localhost:80

下載下傳連結:http://php.net/downloads.php

zlib

官網:http://www.zlib.net/

shell> tar xf zlib.1.2.8.tar.gz  

shell> cd zlib.1.2.8  

shell> ./configure  

shell> make test  

GD庫

libpng

官網:http://www.libpng.org/

shell> tar xf libpng-1.6.21  

shell> cd libpng-1.6.21  

shell> ./configure --prefix=/usr/local/libpng  

shell> make check  

jpeg

官網:http://www.ijg.org/

[php] view plain copy

shell> tar xf jpegsrc.v9.tar.gz  

shell> cd jpeg-9  

shell> ./configure --prefix=/usr/local/libjpeg  

libcurl-devel

yum install libcurl-devel  

openssl-devel

yum install openssl-devel  

libxslt-devel

yum install libxslt-devel  

libxml2-devel

yum install libxml2-devel  

freetype 字型操作庫

官網:http://www.freetype.org/

shell> tar xf freetype-2.6.3.tar.bz2  

shell> sh autogen.sh  

shell> ./configure --prefix=/usr/local/freetype  

./configure --prefix=/usr/local/php \  

 --with-apxs2=/usr/local/apache/bin/apxs \  

 --with-curl \  

 --with-freetype-dir=/usr/local/freetype \  

 --with-gd \  

 --with-gettext \  

 --with-iconv-dir \  

 --with-mysqli \  

 --with-openssl \  

 --with-pcre-regex \  

 --with-pdo-mysql \  

 --with-pdo-sqlite \  

 --with-pear \  

 --with-png-dir=/usr/local/libpng \  

 --with-jpeg-dir=/usr/local/libjpeg \  

 --with-xsl \  

 --with-zlib \  

 --enable-fpm \  

 --enable-bcmath \  

 --enable-libxml \  

 --enable-inline-optimization \  

 --enable-gd-native-ttf \  

 --enable-mbregex \  

 --enable-mbstring \  

 --enable-opcache \  

 --enable-pcntl \  

 --enable-shmop \  

 --enable-soap \  

 --enable-sockets \  

 --enable-sysvsem \  

 --enable-xml \  

 --enable-zip  

(./configure  '--prefix=/usr/local/php' '--with-freetype-dir=/usr/local/freetype' '--with-gd' '--with-gettext' '--with-iconv-dir' '--with-mysqli' '--with-openssl' '--with-pcre-regex' '--with-pdo-mysql' '--with-pdo-sqlite' '--with-pear' '--with-png-dir=/usr/local/libpng' '--with-jpeg-dir=/usr/local/libjpeg' '--with-xsl' '--with-zlib' '--enable-fpm' '--enable-bcmath' '--enable-libxml' '--enable-inline-optimization' '--enable-gd-native-ttf' '--enable-mbregex' '--enable-mbstring' '--enable-opcache' '--enable-pcntl' '--enable-shmop' '--enable-soap' '--enable-sockets' '--enable-sysvsem' '--enable-xml' '--enable-zip' '--with-curl=/usr/local/curl')指定curl為openssl

Apache與PHP的關聯

PHP安裝成功後會在apache的modules目錄下生成一個libphp.so動态庫檔案,在apache的配置檔案httpd.conf裡自動增加一行

LoadModule php7_module        modules/libphp7.so  

在Apache的配置檔案httpd.conf的<IfModule mime_module></IfModule>塊裡增加一行

AddType application/x-httpd-php .php  

在網站要目錄/usr/local/htdocs裡增加一個index.php測試檔案内容如下:

<?php  

phpinfo();  

然後我們運作此檔案,如果輸出了phpinfo資訊,證明我們安裝成功。

學習時的痛苦是暫時的 未學到的痛苦是終生的