LAMP--4.php 编译安装
2016-07-05 08:32
316 查看
(安装顺序在最后)
把 php 放到最后安装是因为在编译 php 时,需要指定 mysql 和 apache 的路径,如果不先安装好 mysql 和 apache 就没有办法安装 php 。而 apache 和 mysql 的安装顺序就无所谓了。
PHP 官网下载地址:http://www.php.net/downloads.php 。搜狐镜像:http://mirrors.sohu.com/php/php-5.6.10.tar.gz 。
下载 php:
把 php 放到最后安装是因为在编译 php 时,需要指定 mysql 和 apache 的路径,如果不先安装好 mysql 和 apache 就没有办法安装 php 。而 apache 和 mysql 的安装顺序就无所谓了。
PHP 官网下载地址:http://www.php.net/downloads.php 。搜狐镜像:http://mirrors.sohu.com/php/php-5.6.10.tar.gz 。
下载 php:
[root@localhost ~]# cd /usr/local/src [root@localhost src]# wget http://mirrors.sohu.com/php/php-5.6.10.tar.gz[/code] 解压源码包:[root@localhost src]# tar zxf php-5.6.10.tar.gz配置编译参数:[root@localhost src]# cd php-5.6.10 [root@localhost php-5.6.10]# ./configure \ --prefix=/usr/local/php \ --with-apxs2=/usr/local/apache2/bin/apxs \ --with-config-file-path=/usr/local/php/etc \ --with-mysql=/usr/local/mysql \ --with-libxml-dir \ --with-gd \ --with-jpeg-dir \ --with-png-dir \ --with-freetype-dir \ --with-iconv-dir \ --with-zlib-dir \ --with-bz2 \ --with-openssl \ --with-mcrypt \ --enable-soap \ --enable-gd-native-ttf \ --enable-mbstring \ --enable-sockets \ --enable-exif \ --disable-ipv6遇到错误:error: xml2-config not found. Please check your libxml2 installation. # yum install -y libxml2-develerror: Cannot find OpenSSL's <evp.h> # yum install -y openssl openssl-develerror: Please reinstall the BZip2 distribution # yum install -y bzip2 bzip2-develerror: png.h not found. # yum install -y libpng libpng-develerror: freetype.h not found. # yum install -y freetype freetype-develerror: freetype-config not found. # yum install -y freetype-develerror: mcrypt.h not found. Please reinstall libmcrypt. # yum install -y libmcrypt-devel编译
#make[root@localhost php-5.6.10]# make crypt -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -o sapi/cgi/php-cgi Generating phar.php Generating phar.phar PEAR package PHP_Archive not installed: generated phar will require PHP's phar extension be enabled. pharcommand.inc directorytreeiterator.inc clicommand.inc directorygraphiterator.inc invertedregexiterator.inc phar.inc Build complete. Don't forget to run 'make test'. [root@localhost php-5.6.10]# echo $? 0安装
# make install[root@localhost php-5.6.10]# make install Installing PEAR environment: /usr/local/php/lib/php/ [PEAR] Archive_Tar - installed: 1.3.12 [PEAR] Console_Getopt - installed: 1.3.1 [PEAR] Structures_Graph- installed: 1.0.4 [PEAR] XML_Util - installed: 1.2.3 [PEAR] PEAR - installed: 1.9.5 Wrote PEAR system config file at: /usr/local/php/etc/pear.conf You may want to add: /usr/local/php/lib/php to your php.ini include_path /usr/local/src/php-5.6.10/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin ln -s -f phar.phar /usr/local/php/bin/phar Installing PDO headers: /usr/local/php/include/php/ext/pdo/ [root@localhost php-5.6.10]# echo $? 0拷贝 php 配置文件[root@localhost php-5.6.10]# cp php.ini-production /usr/local/php/etc/php.ini修改 apache 配置文件[root@localhost php-5.6.10]# vim /usr/local/apache2/conf/httpd.conf找到:<Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> 改为: <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Allow from all </Directory>说明:如果不修改这个地方,我们访问网站会禁止访问,显示403。
然后找到:AddType application/x-gzip .gz .tgz在该行下面添加:AddType application/x-gzip .gz .tgz说明:要想支持 php 脚本解析,必须要加上对应的类型。
AddType application/x-httpd-php .php
再找到:<IfModule dir_module> DirectoryIndex index.html </IfModule>改为:<IfModule dir_module> DirectoryIndex index.html index.htm index.php </IfModule>说明:增加对 php 的索引,如果一个站点默认页为 index.php,那么就得加上这个 index.php 的支持。
再找到:#ServerName www.example.com:80修改为:ServerName localhost:80如果不去掉#,则启动 apache 时,会有警告信息“httpd:Could not reliably determine the server's fully qualified domain name,using localhost.localdomain for ServerName”,看起来像是错误,其实没有影响。
查看配置文件是否有问题:[root@localhost php-5.6.10]# /usr/local/apache2/bin/apachectl -t Syntax OK启动服务:[root@localhost php-5.6.10]# /usr/local/apache2/bin/apachectl start检查是否正常启动:[root@localhost php-5.6.10]# ps aux|grep httpd root 7998 0.0 0.7 196260 7284 ? Ss 23:45 0:00 /usr/local/apache2/bin/httpd -k start daemon 7999 0.0 0.4 196396 4920 ? S 23:45 0:00 /usr/local/apache2/bin/httpd -k start daemon 8000 0.0 0.4 196396 4920 ? S 23:45 0:00 /usr/local/apache2/bin/httpd -k start daemon 8001 0.0 0.4 196396 4920 ? S 23:45 0:00 /usr/local/apache2/bin/httpd -k start daemon 8002 0.0 0.4 196396 4920 ? S 23:45 0:00 /usr/local/apache2/bin/httpd -k start daemon 8003 0.0 0.4 196396 4920 ? S 23:45 0:00 /usr/local/apache2/bin/httpd -k start root 8005 0.0 0.0 103316 900 pts/1 S+ 23:45 0:00 grep httpd
相关文章推荐
- 一个关于if else容易迷惑的问题
- 从源码安装Mysql/Percona 5.5
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- 在 AppImage、Flathub 和 Snapcraft 平台上搜索 Linux 应用
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- 解决vc中unable to connect to the MKS:Internal error问题
- rem : web app适配的秘密武器
- jquery高级应用之Deferred对象
- 关于浮动与清除浮动,你应该知道的
- php7 读取php.ini[4]
- 杰奇一些安装详细说明文件,比官方更细
- Aut2Exe编译au3脚本为可执行文件
- 无线网卡安装DIY