lamp环境搭配(centos6.4)
(一)如果你的服务器没有链接网络可以先挂载本地光盘。设置yum源。
挂载光盘:
- [root@delphi ~]# mkdir /mnt/cdrom #新建挂载点
- [root@delphi ~]# mount /dev/cdrom /mnt/cdrom/ #挂载本地光盘
- mount: block device /dev/sr0 is write-protected, mounting read-only
- [root@delphi ~]#
配置yum源:
- [root@delphi ~]# cd /etc/yum.repos.d/
- [root@delphi yum.repos.d]# ls
- CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
- [root@delphi yum.repos.d]# vi CentOS-Media.repo
- # CentOS-Media.repo
- #
- # This repo can be used with mounted DVD media, verify the mount point for
- # CentOS-. You can use this repo and yum to install items directly off the
- # DVD ISO that we release.
- #
- # To use this repo, put in your DVD and use it with the other repos too:
- # yum --enablerepo=c6-media [command]
- #
- # or for ONLY the media repo, do this:
- #
- # yum --disablerepo=\* --enablerepo=c6-media [command]
- [c6-media]
- name=CentOS-$releasever - Media
- baseurl=file:///mnt/cdrom/ #指定了三个光盘有可能挂载的路径。
- file:///media/cdrom/
- file:///media/cdrecorder/
- gpgcheck=
- enabled= #enabled= 这里的0代表缺省源不存在,1代表启用。
- gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
- # wq保存退出。
如果你的linux能够上互联网,那么备份Base这个配置文件。
- [root@delphi yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak
(二)保证你的电脑里安装了gcc gcc-c++ make,如果没有应该先安装
- [root@delphi ~]# yum install gcc -y
- [root@delphi ~]# yum install gcc-c++ -y
(三)卸载apache php mysql rpm软件包。我的系统里没有装。方法很多,不一一罗列。
查看服务有没有启动:
- [root@delphi ~]# service httpd status
- httpd: 未被识别的服务
- [root@delphi ~]# service mysqld status
- mysqld: 未被识别的服务
- [root@delphi ~]# rpm -qa httpd
- [root@delphi ~]# rpm -qa mysql
- [root@delphi ~]# rpm -qa mysqld
- [root@delphi ~]# rpm -qa | grep php
如果你的系统里有这些包,那么rpm -e packagename或者yum remove packagename(解决依赖卸载)。
(四)关闭SElinux 允许iptables相关端口
1.关闭selinux的两种方法。--永久关闭。(需要重启系统)
- [root@delphi ~]# vi /etc/sysconfig/selinux
- # This file controls the state of SELinux on the system.
- # SELINUX= can take one of these three values:
- # enforcing - SELinux security policy is enforced.
- # permissive - SELinux prints warnings instead of enforcing.
- # disabled - No SELinux policy is loaded.
- SELINUX=disabled # 把SELINUX=enforcing 更改为SELINUX=disabled
- # SELINUXTYPE= can take one of these two values:
- # targeted - Targeted processes are protected,
- # mls - Multi Level Security protection.
- SELINUXTYPE=targeted
2.临时关闭(不需要重启系统)
- [root@delphi ~]# setenforce
(五)准备源码部署需要安装的所有源代码包
libxml2-2.6.30.tar.gz
libmcrypt-2.5.8.tar.gz
zlib-1.2.3.tar.gz
libpng-1.2.31.tar.gz
jpegsrc.v6b.tar.gz
freetype-2.3.5.tar.gz
autoconf-2.61.tar.gz
gd-2.0.35.tar.gz
httpd-2.2.9.tar.gz
ncurses-5.6.tar.gz
mysql-5.0.41.tar.gz
php-5.2.6.tar.gz
ZendOptimizer-3.2.6-linux-glibc21-i386.tar.gz
phpMyAdmin-3.0.0-rc1-all-languages.tar.gz
- [root@delphi ~]# cd /root/lamp
- [root@delphi lamp]# ls
- autoconf-2.61.tar.gz libmcrypt-2.5..tar.gz php-5.2..tar.gz
- freetype-2.3..tar.gz libpng-1.2..tar.gz phpMyAdmin-3.0.-rc1-all-languages.tar.gz
- gd-2.0..tar.gz libxml2-2.6..tar.gz ZendOptimizer-3.2.-linux-glibc21-i386.tar.gz
- httpd-2.2..tar.gz mysql-5.0..tar.gz zlib-1.2..tar.gz
- jpegsrc.v6b.tar.gz ncurses-5.6.tar.gz
这里写一个解压源码包的脚本。
#!/bin/bash
cd /root/lamp
ls * > lamp.list
for i in $(cat lamp.list)
do
tar zxf $i
done
运行脚本:
- [root@delphi ~]# sh lamp.sh
查看解压:
- [root@delphi lamp]# ls
- autoconf-2.61 jpeg-6b libxml2-2.6..tar.gz phpMyAdmin-3.0.-rc1-all-languages.tar.gz
- autoconf-2.61.tar.gz jpegsrc.v6b.tar.gz mysql-5.0. ZendOptimizer-3.2.-linux-glibc21-i386
- freetype-2.3. lamp.list mysql-5.0..tar.gz ZendOptimizer-3.2.-linux-glibc21-i386.tar.gz
- freetype-2.3..tar.gz libmcrypt-2.5. ncurses-5.6 zlib-1.2.
- gd-2.0. libmcrypt-2.5..tar.gz ncurses-5.6.tar.gz zlib-1.2..tar.gz
- gd-2.0..tar.gz libpng-1.2. php-5.2.
- httpd-2.2. libpng-1.2..tar.gz php-5.2..tar.gz
- httpd-2.2..tar.gz libxml2-2.6. phpMyAdmin-3.0.-rc1-all-languages
(六)开始搭建lamp环境
安装三步走configure ---make ---make install
configure 检测系统配置,检测软件安装所需要的软件。
make 编译二进制文件为可执行文件。
make install 安装软件。
1.编译安装xml2
- [root@delphi lamp]#cd libxml2-2.6.
- [root@delphi libxml2-2.6.]# ./configure --prefix=/usr/local/libxml2/
- [root@delphi libxml2-2.6.]# make && make install
2.同样的方法安装libmcrpyt
- [root@delphi lamp]# cd libmcrypt-2.5.
- [root@delphi libmcrypt-2.5.]# ./configure --prefix=/usr/local/libmcrypt/
- [root@delphi libmcrypt-2.5.]# make && make install
3.编译安装zlib (zlib是个库文件,这里为了防止后期出错,不用指定路径,如果是64位系统,请参见安装libpng排错的方法安装。)
- [root@delphi lamp]# cd zlib-1.2.
- [root@delphi zlib-1.2.]# ./configure
- [root@delphi zlib-1.2.]# make && make install
编译安装libpng如果出现如下错误,是应为你的环境是64位系统,匹配不了zlib库。
/usr/local/lib/libz.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make[1]: *** [libpng12.la] 错误 1
make[1]: Leaving directory `/root/packget/libpng-1.2.31'
make: *** [all] 错误 2
解决办法:重新新安装 zlib
tar -zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
vi Makefile
找到 CFLAGS=-O3 -DUSE_MMAP
在后面加入-fPIC,即变成CFLAGS=-O3 -DUSE_MMAP -fPIC
接下面步骤
make
make install
4.编译安装libpng
- [root@delphi lamp]# cd libpng-1.2.
- [root@delphi libpng-1.2.]# ./configure -prefix=/usr/local/libpng/
- [root@delphi libpng-1.2.]# make && make install
5.安装jpeg6
这源码包的安装相对复杂一点。因为其不会自动创建对应的目录,首先我们自己手动建立目录
/usr/local/jpeg6/ #创建安装目录
/usr/local/jpeg6/bin/ #创建可执行文件目录
/usr/local/jpeg6/lib/ #创建库文件爱你存放目录
/usr/local/jpeg6/include #创建头文件存放目录
/usr/local/jpeg6/man/man1 #创建man手册中的命令帮助,man1指的是命令帮助, man5配置文件的帮助。
- [root@delphi lamp]# cd jpeg-6b/
- [root@delphi jpeg-6b]# mkdir /usr/local/jpeg6/ && mkdir /usr/local/jpeg6/bin/ && mkdir /usr/local/jpeg6/lib/ && mkdir /usr/local/jpeg6/include
- [root@delphi jpeg-6b]# mkdir -p /usr/local/jpeg6/man/man1
- [root@delphi jpeg-6b]# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static
- [root@delphi jpeg-6b]# make && make install
*************************************************************************
./libtool --mode=compile gcc -O2 -I. -c ./jcapimin.c
make: ./libtool:命令未找到
make: *** [jcapimin.lo] 错误 127
出现以上错误的解决办法:
[root@delphi jpeg-6b]# cp /usr/share/libtool/config/config.sub /root/packget/jpeg-6b/
[root@delphi jpeg-6b]# cp /usr/share/libtool/config/config.guess /root/packget/jpeg-6b/
然后:
[root@delphi jpeg-6b]# make clean
再执行:
[root@delphi jpeg-6b]# make
[root@delphi jpeg-6b]# make install
************************************************************************
6.编译安装freetype
- [root@delphi lamp]# cd freetype-2.3.
- [root@delphi freetype-2.3.]# ./configure --prefix=/usr/local/freetype/
- [root@delphi freetype-2.3.]# make && make install
7.编译安装autoconf
- [root@delphi lamp]# cd autoconf-2.61
- [root@delphi autoconf-2.61]# ./configure
- [root@delphi autoconf-2.61]# make && make install
8.编译安装gd库:
- [root@delphi lamp]# cd gd-2.0.
- [root@delphi gd-2.0.]# ./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/
- #备注一下:这里如果你的zlib库是指定路径,那么可以--with-zlib=/$PATH
- [root@delphi gd-2.0.]# make && make install
9.编译安装apache:
- [root@delphi lamp]# cd httpd-2.2.
- [root@delphi httpd-2.2.]# ./configure --prefix=/usr/local/apache2/ --sysconfdir=/etc/httpd/ --with-included-apr --disable-userdir --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-static-support
- [root@delphi httpd-2.2.]# make && make install
- [root@delphi httpd-2.2.]# /usr/local/apache2/bin/apachectl start
- [root@delphi httpd-2.2.]# pgrep httpd
如果没有禁止selinux
那么使用如下命令开启模块权限:
[root@delphi ~]# chcon -t texrel_shlib_t modulename
通过浏览器访问服务器,如果反回It‘s works ! 表示安装成功。
10.编译安装mysql之前需要安装编译nourses:
- [root@delphi lamp]# cd ncurses-5.6
- [root@delphi ncurses-5.6]# ./configure --with-shared --without-debug --without-ada --enable-overwrite
- [root@delphi ncurses-5.6]# make && make install
11.编译安装mysql:
首先创建mysql用户以及用户组:
- [root@delphi lamp]# cd mysql-5.0.
- [root@delphi mysql-5.0.]# groupadd mysql
- [root@delphi mysql-5.0.]# grep mysql /etc/group
- mysql:x::
- [root@delphi mysql-5.0.]# useradd -g mysql mysql
- [root@delphi mysql-5.0.]# ./configure --prefix=/usr/local/mysql --with-extra-charsets=all
- [root@delphi mysql-5.0.]# make && make install
配置mysql:把源码包中的my-medium.cnf拷贝的/etc/下命名为my.cnf
- [root@delphi mysql-5.0.]# cp support-files/my-medium.cnf /etc/my.cnf
启动用户的授权表:
- [root@delphi mysql-5.0.]# /usr/local/mysql/bin/mysql_install_db --user=mysql
改变目录权限:
- [root@delphi mysql-5.0.]# chown -R root /usr/local/mysql #改变mysql所属用户
- [root@delphi mysql-5.0.]# chown -R mysql /usr/local/mysql/var #改变mysql下var这个目录所属用户
- [root@delphi mysql-5.0.]# chgrp -R mysql /usr/local/mysql #改变mysql的所属组,这里的-R是权限继承到子目录
启动:mysql
- [root@delphi mysql-5.0.]# /usr/local/mysql/bin/mysqld_safe --user=mysql &
- []
- [root@delphi mysql-5.0.]# nohup: 忽略输入重定向错误到标准输出端
- Starting mysqld daemon with databases from /usr/local/mysql/var #表示数据存放路径。回车既可。
查看mysql是否启动:
- [root@delphi mysql-5.0.]# pgrep mysql
查看mysql的版本:
- [root@delphi mysql-5.0.]# /usr/local/mysql/bin/mysqladmin version
查看mysql配置参数:
- [root@delphi mysql-5.0.]# /usr/local/mysql/bin/mysqladmin variables
设置mysql的用户密码:
- [root@delphi mysql-5.0.]# /usr/local/mysql/bin/mysql -uroot
- Welcome to the MySQL monitor. Commands end with ; or \g.
- Your MySQL connection id is
- Server version: 5.0.-log Source distribution
- Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
- mysql> set password for 'root'@'localhost'=PASSWORD('');
- Query OK, rows affected (0.00 sec)
- mysql> flush privileges;
- Query OK, rows affected (0.00 sec)
- mysql> exit
- Bye
把apache和mysql 加入启动项
- [root@delphi mysql-5.0.]# echo "/usr/local/apache2/bin/apachectl start" >>/etc/rc.d/rc.local
- [root@delphi mysql-5.0.]# echo "/usr/local/mysql/bin/mysqld_safe --user=mysql &" >> /etc/rc.d/rc.local
或者:
- [root@delphi ~]# cd lamp/mysql-5.0.
- [root@delphi mysql-5.0.]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
- [root@delphi mysql-5.0.]# chown root.root /etc/rc.d/init.d/mysqld
- [root@delphi mysql-5.0.]# chmod /etc/rc.d/init.d/mysqld
- [root@delphi mysql-5.0.]# chkconfig --add mysqld
- [root@delphi mysql-5.0.]# chkconfig --list mysqld
- mysqld :关闭1:关闭2:启用3:启用4:启用5:启用6:关闭
- [root@delphi mysql-5.0.]# chkconfig --levels mysqld off #设置运行级别启动项的方法.
- [root@delphi mysql-5.0.]# chkconfig --list mysqld
- mysqld :关闭1:关闭2:关闭3:启用4:关闭5:关闭6:关闭
- [root@delphi mysql-5.0.]# chkconfig --levels mysqld on #更改回原来的运行级别
12.安装php:
- [root@delphi lamp]# cd php-5.2.
- [root@delphi php-5.2.]# ./configure --prefix=/usr/local/php/ --with-config-file-path=/usr/local/php/etc \
- > --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql/ \
- > --with-libxml-dir=/usr/local/libxml2/ --with-jpeg-dir=/usr/local/jpeg6/ \
- > --with-freetype-dir=/usr/local/freetype/ --with-gd=/usr/local/gd2/ \
- > --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config \
- > --enable-soap --enable-mbstring=all --enable-sockets
- [root@delphi php-5.2.]# make && make install
- [root@delphi php-5.2.]# cp php.ini-dist /usr/local/php/etc/php.ini
- [root@delphi php-5.2.]# echo "Addtype application/x-httpd-php .php .phtml" >> /etc/httpd/httpd.conf
- [root@delphi php-5.2.]# /usr/local/apache2/bin/apachectl restart
13.安装Zend加速器
- [root@delphi lamp]# cd ZendOptimizer-3.2.-linux-glibc21-i386
- [root@delphi ZendOptimizer-3.2.-linux-glibc21-i386]# ./install.sh
安装过程选择正确的 php.ini 文件所在目录 和 apache控制命令所在目录
14.安装 phpmyadmin 方便管理mysql数据库
- [root@delphi lamp]# mv phpMyAdmin-3.0.-rc1-all-languages /usr/local/apache2/htdocs/phpmyadmin
lamp环境搭配(centos6.4)的更多相关文章
- LINUX的LAMP环境搭配
在ubuntu linux下以编译方式安装LAMP(apache mysql php)环境 最近转向到了使用ubuntu做 桌面,安装好系统以来一直都没配置lamp开发环境.由于很久以来没有自己编译安 ...
- LAMP环境 源码包安装
linux的学习很早就开始了,大学的时候的时候有有学过unix,后来每年都有去看看linux,因为在小城市的缘故,很少会实际工作中用到,基本都是智慧云之类的,同事也说,你学起来也用不上,IT生态不好, ...
- centos7 配置lamp 环境
搭建版本 版本组合 php5.6+apache/2.4.6(centos7)+mysql5.7.24 因为新系统不能确认哪些指令已经搭建 所以安装前需要确认下是否拥有 检测是否已经安装过Vim rp ...
- lnmp环境搭建(centos6.9+mysql5.7+php7.1+nginx1.10)
安装前准备:CentOS 6.9 64位 最小化安装 yum install -y make gcc gcc-c++ perl zlib-devel libaio libpng libpng-deve ...
- lamp环境centos6.4
http://www.centos.bz/2011/09/centos-compile-lamp-apache-mysql-php/comment-page-1/#comments 编译安装: 首先卸 ...
- Centos6.4版本下搭建LAMP环境
Centos6.4版本下搭建LAMP环境 配置yum mkdir/mnt/cdrom mount/dev/cdrom /mnt/cdrom 装载光盘 vi /etc/yum.repos.d/Cent ...
- lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)
lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1) 安装前准备:CentOS 6.9 64位 最小化安装 yum install -y make gcc gcc ...
- CentOS6.5下搭建LAMP环境(源码编译方式)
CentOS 6.5安装配置LAMP服务器(Apache+PHP5+MySQL) 学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP ,WAMP,MAMP等.这里我介 ...
- CentOS6.5下编译安装LAMP环境
LAMP(Linux-Apache-MySQL-PHP)网站架构是目前国际流行的Web框架.该框架能够满足大流量.大并发量的网站需求:当然.也可以直接使用高性能的服务器.高性能的负载均衡硬件以及CDN ...
随机推荐
- StructureMap使用方法(转)
终于到了题目中的MVC使用StructureMap依赖注入的配置与实现了.在ASP.Net三层架构应用中StructureMap的是最老的IOC/DI工具,也就是依赖注入,很多线上的项目都使用了Str ...
- JQuery EasyUI的datagrid的使用方式总结
JQuery EasyUI的datagrid的使用方式总结第一步:添加样式和js脚本在前台添加展示数据表格的table元素 例如: <div> <table id="tt& ...
- SSI-Server Side Inclued
SSI是指将内容发送到浏览器之前,可以使用“服务器端包含 (SSI)”指令将文本.图形或应用程序信息包含到网页中. IIS.Apache等主流web服务器都支持,cassini不支持.它并不经过asp ...
- netbeans中给jpanl添加背景图片制定代码的理解——匿名内部类继承父类
此测试是为了仿照在netbeans中给jpanl添加背景图片的制定代码的执行过程 在JpDemo中定义了个Car类的数据类型,但在给其赋值对象时使用了匿名内部类,继承了Car类,是其子类,并重写了父类 ...
- 解读HTML 5新语法 提高语义价值
HTML 5的新标记 设计者们需要完成的任务是要给HTML 5开发一个更丰富的和更有含义的语义,当然可以想象这种新方案将会是很灵活和很高效的,同时与所有的现代互联网标准相适应.下面就是一些将要在HTM ...
- JAVA基础知识之JDBC——使用ResultSetMetaData分析结果集
通过ResultSetMetaData可以对ResultSet进行分析,获取ResultSet里包含了哪些数据列,以及每个列的数据类型. ResultSet中包含了一个getMetaData()方法, ...
- JSON下
JSON下:目录一:把 JSON 文本转换为 JavaScript 对象二:JSON 实例 - 来自字符串的对象 一.把 JSON 文本转换为 JavaScript 对象JSON 最常见的用法之一,是 ...
- 解决一道leetcode算法题的曲折过程及引发的思考
写在前面 本题实际解题过程是 从 40秒 --> 24秒 -->1.5秒 --> 715ms --> 320ms --> 48ms --> 36ms --> ...
- 将InfoObject作为信息提供者Characteristic is InfoProvider
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- Javascript学习笔记:6种实现继承的方式
①原型链式继承 function Person(name){ this.name=name; } Person.prototype.getName=function(){ return this.na ...