LAMP--Linux+Apache(httpd)+MySQL+PHP,是常用的web服务器架构,下面接受编译安装的过程,以及出现的错误。

注意事项:

1. 扩展epel源:参照:http://www.cnblogs.com/llius/p/5105051.html

2. php放到mysql和httpd后面安装,因为编译时候依赖两者的路径

3. 防火墙关闭:iptables -F --> service iptables save (centos7不支持save);vim /etc/selinux/config: SELINUX=enforcing --> SELINUX=disabled --> reboot

试验环境:

CentOS_6.6 64位  &&  CentOS_7.0 64位       亲测有效!!!

三软件版本(虽然版本比较旧,对练手来说是比较好的):

httpd-2.2.24.tar.bz2

mysql-5.1.73-linux-x86_64-glibc23.tar.gz   //免编包,mysql太大,编译很费时间,可以选择免编包

php-5.4.44.tar.bz2

扩展库资源,部分包需要扩展epel源:

yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel openssl openssl-devel openldap openldap-devel openldap-clients openldap-servers libmcrypt libmcrypt-devel libaio libaio-devel openssl*

一、mysql的安装:

  1. 新环境没有mysql用户,增加一个mysql用户

# useradd -s /sbin/nologin -M mysql    //-M: 不生成家目录 -s /sbin/nologin

  2. 新建mysql的数据目录,并将所属权给mysql

# mkdir -p /data/mysql
# chown -R mysql.mysql !$

  3. 下载mysql-5.1.73-linux-x86_64-glibc23.tar.gz,解压,移动重命名,更改属主为mysql

# cd /usr/local/src
# wget http://mirrors.sohu.com/mysql/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz
# tar -zxvf mysql-5.1.73-linux-x86_64-glibc23.tar.gz
# mv mysql-5.1.73-linux-x86_64-glibc23.tar.gz ../mysql
# chown -R mysql.mysql !$

  4. 初始化 (显示两个OK,说明初始化成功):

# cd /usr/local/mysql
# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql

  5. 配置文件复制和编辑:

# cd /usr/local/mysql/support-files
# cp mysql.server /etc/init.d/mysqld //启动脚本
# vim !$ //编辑下面参数:
basedir=/usr/local/mysql
datadir=/data/mysql
# cp my-small.cnf /etc/my.cnf //配置文件
# /etc/init.d/mysqld start
# ps aux |grep mysqld //有mysqld进程,说明安装成功

二、Apache(httpd)的安装

  1. 下载、解压 httpd-2.2.24.tar.bz2:

# cd /usr/local/src/
# wget http://www.lishiming.net/data/attachment/forum/httpd-2.2.24.tar.bz2
# tar -jxvf httpd-2.2.24.tar.bz2
# cd !$

   2. 配置编译参数:

./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-so \ //对php的扩展有用
--enable-deflate=shared \
--enable-expires=shared \
--enable-rewrite=shared \
--with-pcre

  3. 编译和安装

# make && make install

三、PHP的安装

  1. 下载、解压

# cd /usr/local/src
# wget http://cn2.php.net/distributions/php-5.4.44.tar.gz
# tar zxvf php-5.4.44.tar.gz

  2. 配置编译参数:

./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

   3. 编译和安装:

# make && make install

四、Apache中添加php解析

  1. 拷贝php配置文件:

# cp /usr/local/src/php-5.4.44/php.ini-production /usr/local/php/etc/php.ini

  2. 修改apache配置文件

# vim /usr/local/apache2/conf/httpd.conf

找到:
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all //Deny --> Allow
</Directory> 找到:
AddType application/x-gzip .gz .tgz //下面添加:
AddType application/x-httpd-php .php 再找到:
<IfModule dir_module>
DirectoryIndex index.html //在后面添加:index.htm index.php
</IfModule> 找到:
#ServerName www.example.com:80 //去掉注释,改为:ServerName localhost:80

  3.开启httpd服务

# /usr/local/apache2/bin/apachectl -t   //显示Syntax OK,说明配置文件没问题
# /usr/local/apache2/bin/apachectl start //启动服务
# ps aux |grep httpd //看有无httpd进程

  4. 测试php解析

# cd /usr/local/apache2/htdocs  //apache的文件默认目录
# vim index.php //写入如下内容:
<?php
echo "Hello!"
?>
保存退出
浏览器输入:192.168.220.22\index.php //主机的ip跟php文件名

  如果打开的网页中显示Hello!,不弹出下载php的界面,也不显示<?php echo "Hello!" ?>,说明php的解析成功。

LAMP的安装和注意事项的更多相关文章

  1. LAMP简易安装

    看,老鸟绕道–LAMP简易安装 导读 LAMP是企业中最常用的服务,也是非常稳定的网站架构平台.其中L-指的是Linux,A-指的是Apache,m-指的是mysql或者marriDB,p-php.相 ...

  2. 新手必看,老鸟绕道–LAMP简易安装

    导读 LAMP是企业中最常用的服务,也是非常稳定的网站架构平台.其中L-指的是Linux,A-指的是Apache,m-指的是mysql或者marriDB,p-php.相信大家对这些都已经非常熟悉了,但 ...

  3. 【转载】干货来袭!Linux小白最佳实践:《超容易的Linux系统管理入门书》(连载七)LAMP集成安装

    学Linux做程序开发也好,做系统管理也好,做网络管理员也好,做系统运维也好,不会LAMP和LNMP,那就等于连皮毛都不会!本篇是文字版的LAMP集成安装,下次连载我们要介绍LNMP的文字版安装.有喜 ...

  4. DUBBO安装配置注意事项

    DUBBO安装配置注意事项 参考URL:http://blog.csdn.net/lichunan/article/details/40349645 ====== 管理端: 记得更改TOMCAT的端口 ...

  5. Linux安装系统注意事项及系统初始化

      Linux安装系统注意事项 1.分区 学习用途: /boot:200M /swap :内存的1到2倍 /:根据需要分配大小,比如虚拟机下总空间是15G,那么可以分配8——10G跟/分区,如果是生产 ...

  6. LAMP的安装

    一,LAMP的安装流程:mysql.apache.php或者apache.mysql.php.php放到最后的原因是,php在编译安装的时候是依赖于前2者的. 二,Mysql的安装: 1.下载mysq ...

  7. lamp环境安装

    每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code lamp环境安装 1.查看mysql是否安装 service mysql status 2.查 ...

  8. Adobe Photoshop CC 2018 v19.0 简体中文正式版下载安装破解(附注册机+破解教程) 32/64位(安装破解注意事项是什么)

    Adobe Photoshop CC 2018 v19.0 简体中文正式版下载安装破解(附注册机+破解教程) 32/64位(安装破解注意事项是什么) 一.总结 一句话总结:下载安装破解教程文中都有,需 ...

  9. 编译安装LAMP之安装Apache+php与管理(十五)

    [教程主题]:编译安装LAMP之安装Apache+php与管理 [课程录制]: 创E [主要内容] [1]编译安装Apache+PHP 1.安装程序依赖库和开发环境 为了省事把所需要的库文件全都安装上 ...

随机推荐

  1. shell fold限制文件行宽

    将文本的行限制到特定的宽 这个用 echo 命令发送的文本用 -w 选项分解成块. 在这个例子中,我们设定了行宽为12个字符. 如果没有字符设置,默认是80. 增加的 -s 选项将让 fold 分解到 ...

  2. node的开发者环境设置丢失

    1.我看到的最简单的一种:evn 默认的值是  development var app = express(); if (app.get('env') === 'development') { req ...

  3. Python yield 用法

    一.环境 python 3.6 二.yield 说明 yield 是一个生成器,可以用于迭代.也是一个类似 return 的关键字,迭代一次遇到yield时就返回yield后面(右边)的值. 重点是: ...

  4. E: 无法获得锁 /var/cache/apt/archives/lock - open (11 资源临时不可用)

    事件: 今软件包有更新,进入更新管理器,点击安装更新,出现错误. 错误提示: E: 无法获得锁 /var/cache/apt/archives/lock - open (11 资源临时不可用) E: ...

  5. 转载:几种 hive join 类型简介

    作为数据分析中经常进行的join 操作,传统DBMS 数据库已经将各种算法优化到了极致,而对于hadoop 使用的mapreduce 所进行的join 操作,去年开始也是有各种不同的算法论文出现,讨论 ...

  6. Java基础——概述

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

  7. 转载-LVS的三种工作模式

    来源地址:http://www.uml.org.cn/zjjs/201211124.asp 1.lvs简介         lvs是一个开源的软件,由毕业于国防科技大学的章文嵩博士于1998年5月创立 ...

  8. PHP获取访客IP、地区位置信息、浏览器、来源页面

    不多说了,每个方法都注释了,可以直接用: <?php //这个类似用来获取访客信息的 //方便统计 class visitorInfo { //获取访客ip public function ge ...

  9. [笔记] linux中的计划任务crontab

    不能拒绝进步 cron来源于希腊单词chronos(意为"时间"),指linux系统下一个自动执行指定任务的程序(计划任务). 1--crontab 的命令选项 #crontab ...

  10. salesforce linghtning component 自动添加标准style css样式

    Your app automatically gets Lightning Design System styles if it extends  force:slds <aura:applic ...