環境:php
CentOS7 64位html
Linux localhost.localdomain 3.10.0-123.el7.x86_64 #1 SMP Mon Jun 30 12:09:22 UTC 2014 x86_64 x86_64 x86_64 GNU/Linuxmysql
MySQL詳細安裝可參考:http://www.cnblogs.com/angelasp/p/4308526.htmlsql
Apache詳細安裝可參考:http://www.cnblogs.com/angelasp/p/6446004.html數據庫
1、下載文件apache
一、php下載地址:http://php.net/downloads.php 版本:php-5.6.3.tar.gzapi
二、libxml2下載地址:http://download.chinaunix.net/download/0007000/6095.shtml 版本:libxml2-2.7.4.tar.gz瀏覽器
三、apache2下載地址:http://httpd.apache.org/ 版本:httpd-2.4.10.tar.gz服務器
四、apr與apr-util下載地址:http://apr.apache.org 版本:apr-1.5.1.tar.gz / apr-util-1.5.4.tar.gzapp
五、pcre下載地址:http://sourceforge.net/projects/pcre/files/pcre/ 版本:pcre-8.36.tar.gz
六、MySQL下載地址:http://dev.mysql.com/downloads/mysql/5.1.73.html
MySQL-devel-community-5.1.73-1.rhel5.x86_64.rpm
MySQL-client-community-5.1.73-1.rhel5.x86_64.rpm
MySQL-server-community-5.1.73-1.rhel5.x86_64.rpm
下載
2、安裝MySQL
一、二進制安裝MySQL,步驟以下:
[root@vm15 mysql]# rpm -ivh MySQL-server-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-server-community ########################################### [100%]
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:
/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root -h vm15.example.com password 'new-password'
Alternatively you can run:
/usr/bin/mysql_secure_installation
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.
See the manual for more instructions.
Please report any problems with the /usr/bin/mysqlbug script!
Starting MySQL.. SUCCESS!
Giving mysqld 2 seconds to start
[root@memcache mysql]# rpm -ivh MySQL-client-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-client-community ########################################### [100%]
[root@vm15 mysql]# rpm -ivh MySQL-devel-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
1:MySQL-devel-community ########################################### [100%]
二、驗證安裝是否成功
[root@vm15 mysql]# rpm -qa |grep MySQL
MySQL-client-community-5.1.73-1.rhel5.x86_64
MySQL-devel-community-5.1.73-1.rhel5.x86_64
MySQL-server-community-5.1.73-1.rhel5.x86_64
[root@vm15 mysql]# mysql
出現了「mysql>」提示符,恭喜你,安裝成功!
3、安裝Apache
參考:http://www.cnblogs.com/angelasp/p/6446004.html
4、安裝libxml2
將下載的libxml2-2.7.4.tar.gz文件上傳至/usr/local
[root@vm15 local]# mkdir -p libxml2
[root@vm15 local]# tar -zxvf libxml2-2.7.4.tar.gz
[root@vm15 local]# cd libxml2-2.7.4
[root@vm15 libxml2-2.7.4]# ./configure --prefix=/usr/local/libxml2
[root@vm15 libxml2-2.7.4]# make
[root@vm15 libxml2-2.7.4]# make install
若是安裝成功之後,在/usr/local/libxml2/目錄下將生成bin、include、lib和share四個目錄。在後面安裝PHP5源代碼包的配置時,會經過在configure命令的選項中加上"--with-libxml-dir=/usr/ local/libxml2"選項,用於指定安裝libxml2庫文件的位置。
5、安裝php
將下載的php-5.6.3.tar.gz文件上傳至/usr/local
[root@vm15 local]# mkdir -p php
[root@vm15 local]# tar -zxvf php-5.6.3.tar.gz
[root@vm15 local]# cd php-5.6.3
[root@vm15 php-5.6.3]#./configure --prefix=/usr/local/php --with-mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2
這裏須要補充一下 網上基本是這樣子
後來鏈接數據庫出現了些問題若是連接不上數據庫能夠是試試這個:
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql --with-mysqli --with-pdo-mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-gd --with-jpeg-dir --with-png-dir --enable-mbstring --enable-xml --with-xpm-dir=/usr --enable-fpm --with-freetype-dir --with-mcrypt --with-mhash --with-gettext --enable-pdo --with-libxml-dir --with-zlib-dir
出現如下信息表示編譯成功
..
checking for external oniguruma... no
checking for mcrypt support... no
checking for MSSQL support via FreeTDS... no
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
configure: error: Cannot find MySQL header files under /usr/local/mysql.
Note that the MySQL client library is not bundled anymore!
creating libtool
appending configuration tag "CXX" to libtool
Generating files
configure: creating ./config.status
creating main/internal_functions.c
creating main/internal_functions_cli.c
+--------------------------------------------------------------------+
| License: |
| This software is subject to the PHP License, available in this |
| distribution in the file LICENSE. By continuing this installation |
| process, you are bound by the terms of this license agreement. |
| If you do not agree with the terms of this license, you must abort |
| the installation process at this point. |
+--------------------------------------------------------------------+
Thank you for using PHP.
config.status: creating php5.spec
config.status: creating main/build-defs.h
config.status: creating scripts/phpize
config.status: creating scripts/man1/phpize.1
config.status: creating scripts/php-config
config.status: creating scripts/man1/php-config.1
config.status: creating sapi/cli/php.1
config.status: creating sapi/cgi/php-cgi.1
config.status: creating ext/phar/phar.1
config.status: creating ext/phar/phar.phar.1
config.status: creating main/php_config.h
config.status: executing default commands
[root@vm15 php-5.6.3]#make
[root@vm15 php-5.6.3]#make install
安裝成功。
6、配置php
一、配置php.ini,只須要把php-5.6.3安裝包中的php.ini-production拷貝到/usr/local/php/lib/下
[root@vm15 php-5.6.3]# cp php.ini-production /usr/local/php/lib/php.ini
二、配置 httpd.conf 讓apache支持PHP:
# vi /usr/local/apache/conf/httpd.conf
找到 AddType application/x-gzip .gz .tgz 在其下添加以下內容
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
三、在DirectoryIndex增長 index.php,以便Apache識別PHP格式的index
# vi /usr/local/apache/conf/httpd.conf
<IfModule dir_module>
DirectoryIndex index.html index.php
</IfModule>
7、重啓Apache
[root@vm15 mysql]# /usr/local/apache2/bin/apachectl start
(必定要重啓)
8、測試php是否成功安裝
寫一個php測試頁info.php,放到/usr/local/apache2/htdocs中。
<?php
phpinfo();
?>;
在瀏覽器中輸入:服務器地址/info.php。經過phpinfo()能夠查看不少信息,好比php.ini的存放路徑,以及全部擴展組件等,很強大。
若是能正常顯示出php的信息,則說明Apche+Mysql+PHP安裝成功!
9、安裝遇到的問題
一、安裝MySQL時,報下面的錯誤:
[root@memcache mysql]# rpm -ivh MySQL-server-community-5.1.73-1.rhel5.x86_64.rpm
Preparing... ########################################### [100%]
file /usr/share/mysql/charsets/README from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/Index.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/armscii8.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/ascii.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/cp1250.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/cp1251.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
file /usr/share/mysql/charsets/cp1256.xml from install of MySQL-server-community-5.1.73-1.rhel5.x86_64 conflicts with file from package mysql-libs-5.1.73-3.el6_5.x86_64
解決方法:yum remove mysql-libs-5*
二、configure php時,報錯:
Configuring SAPI modules
checking for AOLserver support... no
checking for Apache 1.x module support via DSO through APXS... configure: error: You have enabled Apache 1.3 support while your server is Apache 2. Please use the appropriate switch --with-apxs2
解決方法:./configure --prefix=/usr/local/php --with-mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2
三、安裝apr時,報錯rm: cannot remove `libtoolT': No such file or directory
解決方法:
直接打開/usr/local/apr-1.5.1/configure 把 $RM「$cfgfile」 那行刪除掉
$RM「$cfgfile」 大約在 42302行
[root@vm15 apr-1.5.1]#grep -n RM configure
[root@vm15 apr-1.5.1]#sed -i '/$RM "$cfgfile"/d' configure
而後再從新運行 ./configure --prefix=/usr/local/apr 就能夠了.
四、[root@vm15 php-5.6.3]#./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-libxml-dir=/usr/local/libxml2
..
checking for external oniguruma... no
checking for mcrypt support... no
checking for MSSQL support via FreeTDS... no
checking for MySQL support... yes
checking for specified location of the MySQL UNIX socket... no
configure: error: Cannot find MySQL header files under /usr/local/mysql.
Note that the MySQL client library is not bundled anymore!
解決方法:
[root@localhost php-5.5.6]# find / -name mysql.h
/usr/include/mysql/mysql.h
查找到mysql.h文件,咱們更改參數爲--with-mysql,若是沒有的話,請安裝mysql-devel包,