CentOS 7中LAMP一键安装包与步骤介绍

前不久 CentOS 更新到版本 CentOS 7.0.1406,为了支持此版本,LAMP 一键安装脚本做了大量的更新和测试,并遇到了不少问题,在此一一记录下来。
由于 CentOS 7 将 service 重定向为 systemctl ,导致开机自启动脚本有的需要重写,这个过程也耗费了不少时间测试。同时,原先在 CentOS 6 存在的一些依赖包,在 CentOS 7 中不存在了,比如 libc-client-devel,这是安装 php-imap 扩展所必须的依赖,少了它编译 PHP 的扩展 imap 时必然会出错,于是只能手动编译安装 imap-2007f ,并指定 imap 扩展的路径。
去掉了一些在新旧 CentOS 都不存在的依赖包,比如 libmcrypt-devel,并全部编译安装最新版。

其中一些最主要的更新,列举如下。

1、获取公网 IP 的方式变更
在 CentOS 7 中,默认没有安装 ifconfig ,也就是依赖包 net-tools,所以将原来从 ifconfig 获取 IP 变更为 curl 外链来获取 IP。
所以,安装本脚本,务必要保证联网。

2、手动安装一些依赖包

这些依赖包包括 pcre、libiconv、libmcrypt、mcrypt、re2c、libedit、imap。
在 CentOS 5 中 pcre 版本过低会导致编译 Apache 失败;MySQL 要使用 readline 功能,编译安装 libedit;PHP 的扩展 imap,依赖 libc-client 共享库,编译安装 imap-2007f 等等。
其中有些报错信息网上查到也语焉不详,尤其是中文网站。所以在此列举一下。
编译 PHP 时出错:
configure: error: utf8_mime2text() has new signature, but U8T_CANONICAL is missing. This should not happen. Check config.log for additional information.
就是 imap 扩展缺少依赖包导致的。编译安装 imap-2007f 步骤:

 代码如下 复制代码
wget ftp://ftp.cac.washington.edu/imap/imap-2007f.tar.gz
tar -zxf imap-2007f.tar.gz
cd imap-2007f
make lr5 PASSWDTYPE=std SSLTYPE=unix.nopwd EXTRACFLAGS=-fPIC IP=4
rm -rf /usr/local/imap-2007f/
mkdir /usr/local/imap-2007f/
mkdir /usr/local/imap-2007f/include/
mkdir /usr/local/imap-2007f/lib/
cp c-client/*.h /usr/local/imap-2007f/include/
cp c-client/*.c /usr/local/imap-2007f/lib/
cp c-client/c-client.a /usr/local/imap-2007f/lib/libc-client.a

备注:在 64 位下编译时 make 参数需要带 EXTRACFLAGS=-fPIC ,在 32 位下则不需要。
同时,在 CentOS 7 下编译 PHP 的 imap 扩展时,添加如下参数:

 代码如下 复制代码
--with-imap=/usr/local/imap-2007f
--with-imap-ssl

在 CentOS 6 下编译时,由于已经安装了依赖包 libc-client-devel ,所以参数如下:

 代码如下 复制代码

--with-imap
--with-imap-ssl
--with-kerberos

3、新增一些判断函数

增加了一些判断函数,比如是否为 64 位,是否为 CentOS 7 等。

4、更新启动脚本

Apache 的启动脚本 /etc/init.d/httpd 变更,拷贝于 /usr/local/apache/bin/apachectl 文件,同时为了 /etc/init.d/httpd status 能够使用,新增了配置文件 /usr/local/apache/conf/extra/httpd-info.conf 。

5、CentOS 7 下可能会遇到的问题

安装 LAMP 完成后,无法用 IP 访问网站。查看进程也发现了 httpd 和 mysqld 也启动了,防火墙貌似也关闭了,ping 也没问题,但就是无法访问。
经过一番排查,还真就是 CentOS 7 最新的 firewalld 引起的问题。这时就要用经典的 iptables-services 来替代 firewalld 了。

 代码如下 复制代码
yum -y install iptables-services
systemctl mask firewalld
systemctl enable iptables
systemctl stop firewalld
systemctl start iptables

6、PHP组件支持
到目前为止,我所见过的 LAMP、LNMP、LANMP 等一键安装脚本,对 PHP 组件的支持都不全面,有很多缺失的,最典型的就是 imap、ldap。
为了支持这些组件,我做了大量的改进和测试。这里放一张 PHP 探针截图,支持所有组件,以及 4 种第三方组件。

 


虽然 LAMP 一键安装脚本已经做了大量测试,但还是会有不完善的地方,如果你在使用过程中遇到问题,带安装日志 lamp.log 发送邮件至 i[at]teddysun.com

时间: 2024-08-10 20:29:15

CentOS 7中LAMP一键安装包与步骤介绍的相关文章

LAMP一键安装包(linux+apache+mysql+php)

适用环境: 系统支持:CentOS-5 (32bit/64bit).CentOS-6 (32bit/64bit) 内存要求:≥256M 安装了什么: 1.Apache 2.2.22或Apache 2.4.2 2.MySQL 5.5.24 3.PHP 5.2.17或PHP 5.3.13 4.phpmyadmin 3.5.1 5.ZendOptimizer 3.3.9(可选,只适合PHP 5.2.17) 6.xcache 1.3.2(可选) 7.pure-ftpd-1.0.36(可选) 如何安装:

LAMP或LNMP的一键安装包

网上有很多LNMP/LAMP一键安装脚本,编译安装参数还要修改脚本,此脚本整合了LAMP和LNMP,在任何一台有网络的Red hat 或者centos 服务器上自动配置LNMP或者LAMP,用户可以自定义编译参数也可以使用此脚本默认的参数编译安装.还可以单独安装mysql.nginx.apache.php. 使用方法:将下面代码保存一个文件,例如inst_lanmp.sh 上传到服务器上执行. 此脚本在CentOS 6.0  X864环境下通过:使用效果如下: 代码如下: #!/bin/bash

linux下的lanmp/lamp/lnmp一键安装包

[我的linux,让linux更易用]此安装包为当前最为流量行的web应用lamp,lnmp架构一键安装包,下载解压后,执行一个脚本即可全部安装完.简单,方便,快速 如下 lamp (apache + mysql教程 + php教程 + zend + eaccelerator + vsftpd + phpmyadmin) lnmp (nginx + mysql + php + zend + eaccelerator + vsftpd + phpmyadmin) lamp是linux下php应用的

使用LNMP一键安装包配置CentOS服务器环境教程_Linux

因为不用职守,不用编译安装时输入大量的命令.作为使用linux配置生产环境的新手,无疑是最不想看到的.下面介绍如何在CentOS安装LNMP. 什么是LNMP LNMP指的是Linux系统下Nginx+MySQL+PHP这种网站服务器架构.这种网站服务器架构使用更少的资源,支持更多的并发连接,体现更高的效率.非常适合配置比较低的VPS. 安装LNMP 这里只介绍在CentOS下安装. 1.登录SSH(如何使用SSH?),键入以下命令下载LNMP一键安装包. wget -c http://soft

linux服务器WEB环境一键安装包lanmp系列教程四

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.关于绑定域名给大家的建议,新手值得看 大家在新建站点的时候,第一行,域名那一项,建议不要填写顶级域名,为什么?因为你填写之后,是无法修改的,你以后

Debian 6系统下一键安装包DebianLNMP最快的命令

直接给出安装方法:最快安装.最新稳定版.最省资源! root@DebianLNMP-Jimmyli:~# wget http://sourceforge.net/projects/debian-lnmp/files/DebianLNMP/DebianLNMP-Jimmyli.sh root@DebianLNMP-Jimmyli:~# sh DebianLNMP-Jimmyli.sh 安装完成了! 是的,没有看错.在Debian6系统下安装LNMP(Debian6 + Nginx1.2.x + P

实战分享Linode VPS搭建MAPN一键安装包环境

随着建站的需要和VPS主机空间的普及度,越来越多的站长开始使用VPS主机作为建站的空间.在VPS主机商中,Linode VPS可谓是高帅富的代表,在其最低消费价格19.95刀的门槛之上很多个人站长都望而却步,其实购买一款真正用心做站的VPS产品,其实这个价格真的是 一般般.今天笔者不与大家老外价格问题,主要是用来分享如何在购买了linode vps产品之后使用好这款主机. 大部分用户都是用一键安装包环境搭建站点的,我当然也不例外.下面笔者将分享从Linode面板的设置后最后MAPN一键安装包的实

linux服务器WEB环境一键安装包lanmp教程五

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 在我们安装了linux服务器WEB环境一键安装包lanmp后,可能会有不少疑问还有就是使用过程中出现的问题,下面为大家总结几点比较常见的,如若还有其他疑问,可到wdlinux论坛寻找相关教程. 1.增加pdo_mysql模块 默认的PHP安装,只安装了常用默认模块,一些不常用或少用的,就没有默认安上 可通过如下方法增加,如下以增加pdo-my

lanmp一键安装包

摘要: lanmp/lamp/lnmp/lnamp一键安装包,快速安装包,linux服务器WEB环境一键安装包 lanmp一键安装包是wdlinux官网2010年底开始推出的web应用环境的快速简易安装包. 执行一个脚本,整个环境就安装完成 lanmp/lamp/lnmp/lnamp一键安装包,快速安装包,linux服务器WEB环境一键安装包 lanmp一键安装包是wdlinux官网2010年底开始推出的web应用环境的快速简易安装包. 执行一个脚本,整个环境就安装完成就可使用,快速,方便易用,