共计 3977 个字符,预计需要花费 10 分钟才能阅读完成。
一直都认为国内最好的 PHP 框架为 ThinkPHP,但有朋友说在做 DB 更新的时候,会出现偶然性几率的丢失掉 Where 条件,等于说做有条件的更新的时候,有可能就突然变成了全部更新,。唯有转投当前最热门之一的 YII 框架。
Down 下基础框架后,跑一下,发现没效果,查看一下教程文档才发现原来需要最低 PHP5.4 的版本支持,但系统上用的是 php5.3 的版本,看来要升级了。
吐槽一下,不知道为什么,php 都更新了那么多个版本了,但是 CentOS 默认 yum 安装的还是 PHP5.3 的版本,根本找不到直接升级 PHP 的方法,唯有手工编译升级了。
首先说下思路,因为一开始系统上已经跑了一套完成的 PHP 环境,那时候都是快速自动安装的,如果是跑一些 5.3 以下版本的话,很简单,几个指令,10 分钟搞定了。
但现在要升级,彻底一点的话,唯有推倒重来了。所以步骤有:
1. 卸载掉当前的 Apache、php、MySQL;
2. 清除残留的一些配置文件;
3. 一步步安装 Apache、mysql、php,当然在过程当中需要注意每个软件的依赖控件不可少。
下面是整体的步骤,从卸载后开始(同理适合刚刚安装好的全新系统):
1. 准备工作,工欲善其事必先利其器,各个软件的安装包是必须的,有:
- apr-1.5.1.tar.bz2
- apr-util-1.5.4.tar.bz2
- pcre-8.36.tar.bz2
- httpd-2.4.10.tar.bz2
- mysql-5.5.21.tar.gz
- php-5.6.4.tar.bz2
具体的版本和下载地址相信大家都可以搜索下载好啦。
2. 安装 Apache2.4
- apr-1.5.1.tar.bz2
- apr-util-1.5.4.tar.bz2
- pcre-8.36.tar.bz2
这些是 Apache 依赖的一些安装包,解压,安装。
cd apr-1.5.1
./configure –prefix=/usr/local/apr
make && make install
cd apr-util-1.5.4
./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr
make && make install
cd pcre-8.36
./configure
make && make install
都完成后正式安装 Apache
cd httpd-2.4.10
./configure –prefix=/usr/local/apache2 –with-apr=/usr/local/apr –with-apr-util=/usr/local/apr-util –with-pcre=/usr/local/pcre –enable-so –enable-rewrite
make && make install
cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
service httpd start
测试是否安装成功
出现“It works”就说明 Apache 已经正常安装。
2. 安装 Mysql
需要先安装好 cmake
yum -y install cmake make
cd mysql-5.5.21
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFIGDIR=/usr/local/mysql/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_USER=mysql
make && make install
配置 mysql 5.5.21
cp /usr/loacl/mysql/support-files/my-huge.cnf etc/my.cnf
vi /etc/my.cnf
修改 my.cnf 配置,把 innodb 相关选项前面的 #去掉,大概在 115-130 行之间。
以下命令为 mysql 启动及自启动配置
cp /usr/loacl/mysql/support-files/mysql.server /etc/init.d/mysqld
/usr/local/mysql/scripts/mysql_install_db –user=mysql –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data &
chkconfig –add mysqld
chkconfig –level 345 mysqld on
service mysqld start
一般只要把 my.cnf 设置好这里就不会报错
剩下 mysql 的账号密码数据库等更改创建就还是老规矩了
3. 安装 PHP5.6
cd php-5.6.4
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs –with-libxml-dir=/usr/include/libxml2 –with-config-file-path=/usr/local/apache2/conf –with-mysql=/usr/local/mysql –with-mysqli=/usr/local/mysql/bin/mysql_config –with-gd –enable-gd-native-ttf –with-zlib –with-mcrypt –with-pdo-mysql=/usr/local/mysql –enable-shmop –enable-soap –enable-sockets –enable-wddx –enable-zip –with-xmlrpc –enable-fpm –enable-mbstring –with-zlib-dir –with-bz2 –with-curl –enable-exif –enable-ftp –with-jpeg-dir=/usr/lib –with-png-dir=/usr/lib –with-freetype-dir=/usr/lib/
有时候,CentOS 会在编译过程中报错 mcrypt.h not found. Please reinstall libmcrypt
这个很好解决,见 http://www.linuxidc.com/Linux/2015-08/121079.htm
解决后
make && make install
apache 配置文件 httpd.conf 相关修改以支持 PHP
vim /usr/local/apache/conf/httpd.conf
1. 添加 php 支持。
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
2. 添加默认索引页面 index.php,再找到“DirectoryIndex”,在 index.html 后面加上“index.php”
DirectoryIndex index.html index.php
3. 不显示目录结构,找到“Options Indexes FollowSymLinks”,修改为
Options FollowSymLinks
4. 开启 Apache 支持伪静态,找到“AllowOverride None”,修改为
AllowOverride All
保存 httpd.conf 配置,然后再执行以下两行命令
chown -R nobody. /usr/local/apache/htdocs/
chmod -R 777 /usr/local/apache/htdocs/
service httpd restart
到这里基本 PHP 环境搞定,测试一下.
尝试一下 YII2 是否可以正常运行
Bingo~~~ 收工。
LAMP 平台安装 Xcache 和 Memcached 加速网站运行 http://www.linuxidc.com/Linux/2015-06/118835.htm
CentOS 7 下搭建 LAMP 平台环境 http://www.linuxidc.com/Linux/2015-06/118818.htm
CentOS 6.5 系统安装配置 LAMP(Apache+PHP5+MySQL)服务器环境 http://www.linuxidc.com/Linux/2014-12/111030.htm
Ubuntu 14.04 配置 LAMP+phpMyAdmin PHP(5.5.9)开发环境 http://www.linuxidc.com/Linux/2014-10/107924.htm
Ubuntu 14.10 下安装 LAMP 服务图文详解 http://www.linuxidc.com/Linux/2014-12/110082.htm
更多 CentOS 相关信息见CentOS 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14
本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-08/121078.htm