LAMP环境 源码包安装
linux的学习很早就开始了,大学的时候的时候有有学过unix,后来每年都有去看看linux,因为在小城市的缘故,很少会实际工作中用到,基本都是智慧云之类的,同事也说,你学起来也用不上,IT生态不好,没用!可是自己心里一直有想去学linux,于是这次下决心自己搭建一个lamp环境,记录下来,当做学习笔记。
在网上搜索的lamp环境的资料,很多都是yum的,或者是老资料,为了让自己多敲几段命令,所以选择了源码包的方式。说真的,对于我这种初学者来说,较新版的源码包哪怕是有一点点的安装配置的不一样,可能都要很久才能解决。
所以,为了搭建这个lamp环境,自己反反复复,一点点的比对资料,一点点尝试,不下10遍了。心想,网上怎么就没有目前比较新的,让初学者跟着做很方便搭建出来的分享教程呢?想想自己的总算搭建出来了,分享出来,希望能帮到跟我一样linux的初学者吧。
看网上的教程,千篇一律,你复制我的,我复制你的,作者写点自己的话,都懒的不行。
我希望的教程的逻辑是这样的:安装前言前提->编译安装->配置实现->收尾,看到网上那些把配置的命令,直接紧随安装编译的命令之后,一会儿那里一段命令,一会儿这里一段命令,想到该敲什么命令就敲什么命令,看的乱七八糟的的,而且我想学李明老师那样,弄个sh脚本都会很麻烦。我说这话,没觉得我有多心气儿高,只是把自己学习搭建lamp环境里遇到的网上那些教程的不爽写出来,何况我只是个初学者,哪里有气儿可傲的,而且分享这个我的lamp,我还心虚呢。
我是在虚拟机(vmware)里搭建的,方法比较笨哦。嘿嘿。
如果你跟我一样,是初学的朋友,也想用比较新的源码包的方式搭建一个自己的lamp环境,跟着我这个做,说不定能帮到你。
VMware搭建lamp环境(centos6.5) 安装好centos后,需要进行网络环境配置 三种网络连接方式: 1桥接,使用真实网卡和你的计算机通信,ip配置成和真实机配置成相同的网段,就可以和你的计算机以及局域网内的其它计算机通信,相当于局域网里的一台真实计算机。 2NAT,虚拟机通过VMnet8这块假网卡和你的j计算机进行通信。(只能和你的计算机通信,不占用局域网ip) 3Host-only,虚拟机通过VMnet1这块假网卡和你的计算机进行通信。(只能和你的计算机通信,不占用局域网ip)
为了局域网里其他计算机可以访问我的虚拟服务器,故我使用桥接方式 虚拟机的ip网段必须和使用的网卡的网段一样(使用哪种网络连接方式,就会使用哪个网卡)
安装之前:
1,建立目录
- cd /
- mkdir -p /lamp/sh /lamp/tar_gz /lamp/backup
/lamp/tar_gz放置源码包 /lamp/sh 放置sh脚本 /lamp/backup放置编译安装日志
2,
- yum -y install gcc gcc-c++
3,
- vim /etc/sysconfig/selinux
里面的对应的编辑成
- SELINUX=disabled
4,
把下载到自己电脑的所有源码包上传到/lamp/tar_gz
5,
- cd /lamp/sh
- vim auto-zxvf.sh
拷贝如下代码到auto-zxvf.sh(如果是用了windows编辑器打开过,再上传的,会出错)
- #!/bin/bash
- cd /lamp/tar_gz
- ls *.tar.gz > ls.list
- for TAR in `cat ls.list`
- do
- tar -zxvf $TAR
- done
然后保存(wq),然后敲命令
- bash auto-zxvf.sh
执行了上面的shell后,cd /lamp/tar_gz里,可以看到解压解包后的文件
开始安装
安装apache:
- #需要先安装apache所需的apr,apr-util,pcre,zlib
- cd /lamp/tar_gz/apr-1.4.
- ./configure --prefix=/usr/local/apr/
- make
- make install > /lamp/backup/apr.install.log
- cd /lamp/tar_gz/apr-util-1.3.
- ./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/
- make
- make install > /lamp/backup/apr-util.install.log
- cd /lamp/tar_gz/pcre-8.32
- ./configure --prefix=/usr/local/pcre/
- make
- make install > /lamp/backup/pcre.install.log
- cd /lamp/tar_gz/zlib-1.2.
- ./configure
- make
- make install > /lamp/backup/zlib.install.log
- cd /lamp/tar_gz/httpd-2.4.
- ./configure --prefix=/usr/local/apache2 --enable-so --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ --with-pcre=/usr/local/pcre --enable-modules=most
- make
- make install > /lamp/backup/apache2.install.log
安装mysql
- #MySQL自5.5版本以后,就开始使用cmake编译工具了
- #mysql安装前所需包 cmake,ncurses,bison
- cd /lamp/tar_gz/cmake-2.8.5
- ./configure --prefix=/usr/local/cmake/
- make
- make install > /lamp/backup/cmake.install.log
- #执行此步骤,否则会提示-bash: cmake: command not found
- export PATH=/usr/local/cmake/bin:$PATH
- cd /lamp/tar_gz/ncurses-5.7
- ./configure --with-shared --without-debug --without-ada --enable-overwrite
- make
- make install > /lamp/backup/ncurses.install.log
- cd /lamp/tar_gz/bison-3.0
- ./configure
- make
- make install > /lamp/backup/bison.install.log
- groupadd mysql
- useradd -g mysql mysql
- cd /lamp/tar_gz/mysql-5.6.22
- cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
- -DMYSQL_UNIX_ADDR=/tmp/mysql.sock \
- -DDEFAULT_CHARSET=utf8 \
- -DDEFAULT_COLLATION=utf8_general_ci \
- -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \
- -DWITH_MYISAM_STORAGE_ENGINE=1 \
- -DWITH_INNOBASE_STORAGE_ENGINE=1 \
- -DWITH_READLINE=1 \
- -DENABLED_LOCAL_INFILE=1 \
- -DMYSQL_DATADIR=/usr/local/mysql \
- -DMYSQL_TCP_PORT=3306
- make
- make install > /lamp/backup/mysql.install.log
安装php
- #这个步骤死活出错,后来网上查找了很多方案,结果just add "--without-zlib" 就可以了
- cd /lamp/tar_gz/libxml2-2.6.30
- ./configure --prefix=/usr/local/libxml2/ --without-zlib
- make && make install > /lamp/backup/libxml2.install.log
- cd /lamp/tar_gz/libmcrypt-2.5.8
- ./configure --prefix=/usr/local/libmcrypt/
- make
- make install > /lamp/backup/libmcrypt.install.log
- cd /lamp/tar_gz//libpng-1.6.16
- ./configure --prefix=/usr/local/libpng/
- make
- make install > /lamp/backup/libpng.install.log
- #李明老师的教程和其它网上的2013年后的教程都要建立某些文件夹,可能是jpeg6的版本缘故,此处我的用不着新建
- cd /lamp/tar_gz/jpeg-9a
- ./configure --prefix=/usr/local/jpeg --enable-shared --enable-static
- make
- make install > /lamp/backup/jpeg.install.log
- cd /lamp/tar_gz/freetype-2.5.5
- ./configure --prefix=/usr/local/freetype/
- make
- make install > /lamp/backup/freetype.install.log
- cd /lamp/tar_gz/autoconf-2.69
- ./configure
- make
- make install > /lamp/backup/autoconf.install.log
- cd /lamp/tar_gz/gd-2.0.35
- ./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg/ --with-freetype=/usr/local/freetype/
- make
- make install > /lamp/backup/gd2.install.log
- cd /lamp/tar_gz/php-5.5.21
- #不要写成这样:--with-apxs2=/usr/local/apache2/bin/apxs/最后多了一个斜杠就表示目录,会出错
- ./configure --prefix=/usr/local/php/ --with-libxml-dir=/usr/local/libxml2/ --with-mysql=/usr/local/mysql/ --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc
- make
- make install > /lamp/backup/php.install.log
注:可以把上面(apache,mysql,php的安装)的代码,全部拷贝在一个sh文件里,如auto-make-install.sh,该文件可以放在/lamp/sh里。 然后只需要敲打命令:bash auto-make-install.sh ,让源文件全部自动的编译安装,然后你就可以去看看小电影,聊聊天了
安装好了之后开始配置
配置apache
- #开机启动
- echo "/usr/local/apache2/bin/apachectl start" >> /etc/rc.d/rc.local
- #编辑配置文件
- #httpd.conf如果在安装apache的时候,没有指定配置文件的路径,那么就使用默认的配置文件,此处根据情况使用
- vim /usr/local/apache2/conf/httpd.conf
- #去掉注释并改为
- ServerName localhost:80
- #在搜索AddType,在适当位置增加
- AddType application/x-httpd-php .php .phtml
- #以下处,增加一个index.php,
- <IfModule dir_module>
- DirectoryIndex index.html index.php
- </IfModule>
- #路径,根据个人情况决定是否修改
- DocumentRoot "/usr/local/apache2/htdocs"
:wq保存退出- #启动看看
- /usr/local/apache2/bin/apachectl start
配置mysql
- #改变mysql目录所有者,所属组,以及所属组增加w权限
- chown -R mysql:mysql /usr/local/mysql
- chmod +w /usr/local/mysql
- #初始化mysql表、test表、infomation表等。
- cd /usr/local/mysql
- scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
- #拷贝覆盖配置文件
- \cp -f my.cnf /etc/my.cnf
- #编辑配置
- vim /etc/my.cnf
- #查找并修改
- basedir = /usr/local/mysql
- datadir = /usr/local/mysql/data
- socket = /tmp/mysql.sock
- port = 3306
- server_id = 1
:wq保存退出- #复制启动文件到启动目录,并且编辑启动文件
- cp support-files/mysql.server /etc/init.d/mysqld
- vim /etc/init.d/mysqld
- #查找并修改
- basedir=/usr/local/mysql
- datadir=/usr/local/mysql/data
:wq保存退出- #把启动mysql控制台的命令,生成一个软连接,放到/usr/bin目录下,这样我们只要输入mysql就可以启动mysql控制台了
- ln -s /usr/local/mysql/bin/mysql /usr/bin
- #开启mysql服务
- service mysqld start(据说是redhat才有)或者/etc/init.d/mysqld start
php配置
- cd /lamp/tar_gz/php-5.5.21/
cp php.ini-development /usr/local/php/etc/php.ini
最后
- /usr/local/apache2/bin/apachectl restart
最后在vim /usr/local/apache2/htdocs/phpinfo.php 写入<?php echo phpinfo(); ?> 保存并浏览看看吧。
LAMP环境 源码包安装的更多相关文章
- LAMP环境源码编译安装过程
LAMP环境源码编译安装过程 一.Apache的安装 1.1.apache软件包及依赖包准备 httpd-2.4.29.tar.bz2 apr-1.6.3.tar.gz apr- ...
- Lamp源码包安装实录
Lamp源码包安装实录 附件中是安装步骤,下载站点里包含视频(http://down.51cto.com/data/460776) 本文出自 "李晨光原创技术博客" 博客,请务必保 ...
- LAMP架构—源码编译安装 (爱情受过伤,为爱跳过鸭绿江)
LAMP架构--源码编译安装 1.LAMP架构概述 2.编译安装Apache httpd 服务 3.编译安装mysql 服务 4.编译安装PHP 解析服务 5.利用LAMP搭建论坛 1.LAMP架构概 ...
- mysql 5.5源码包安装
注:由于mysql5.5的源码包安装与mysql之前的版本安装方法不同,故写一篇随笔记录.5.5的版本不再是./configure make make install 这里用到了cmake了,cmak ...
- Linux源码包安装程序
★安装OS时,建议提前安装开发组件 CentOS 6:Development Tools.Server Platform DevelopmentCentOS 7:Development Tools.D ...
- Linux源码包安装过程及注意事项
众做周知RedHat Linux使用RPM包管理器安装rpm包,但是RPM包是由红帽编译打包的,通常相对于最新版落后了很多,甚至可能缺少我们所要使用的功能.如果你需要定制想要的软件功能.自定义安装路径 ...
- linux 软件包安装方式选择、安装位置、源码包安装
对外提供服务,比如apache,应使用源码包安装对内提供服务,比如gcc,只是我自己使用,使用rpm包安装 rpm包不需要指定安装位置,源码包的安装需要手动指定安装位置 rpm包默认安装位置/etc/ ...
- centos 7 源码包安装、卸载nginx
1.源码包安装之前,首页安装依赖包 yum -y install gcc gcc-c++ make libtool zlib zlib-devel openssl openssl-devel pcre ...
- 源码包安装(Python mysql redis)
一 源码包安装 (1)python3.6源码包安装 ./configure ------> 定制功能 make make install mysql 源码包 cmake make make i ...
随机推荐
- 【Qt】Qt之重启应用程序【转】
简介 今天分享的内容有些意思-如何重启一个应用程序.其实,有时候这是一个很重要的功能点,而且很人性化.易用性很好. 例如:切换用户.当某个用户登录成功之后,需要切换到其它账号,那么这时,你就知道它的重 ...
- logstash 统计告警
在实际的项目中需要对线上日志做实时分析跟统计,这一套方案可以用现有的ELK(ElasticSearch, Logstash, Kibana)方案既可以满足,关于这个方案的具体的步骤可以参考网上的解决方 ...
- Delphi 二次开发 CorelDRAW
我们首先通过一个简单的程序例子来看一下Delphi对CorelDRAW二次开发有什么样的效果.本程序实现CorelDRAW程序的打开和关闭. 1.1 Delphi与CorelDRAW连接 在程序与Co ...
- Oracle 10g RAC 启动与关闭
一. 检查共享设备 一般情况下,存放OCR和Voting Disk的OCFS2 或者raw 都是自动启动的. 如果他们没有启动,RAC 肯定是启动不了. 1.1 如果使用ocfs2的 检查ocfs2 ...
- 简单的优化处理 By LINQ TO SQL
最近在做关于新浪微博授权的一些minisite,数据库并不复杂,所以在数据打交道这块采用了linqtosql,开发起来更快更简单...但是随着用户访问逐渐增多,用户上传的图片也越来越多,因为首页是一个 ...
- 金融系列4《PUTKEY指令》
用一个新的密钥替换一个已经存在的密钥:新密钥可以有与被替换的密钥相同的或不同的密钥版本号,但是必须与被替换的密钥有相同的密钥标识符. 用新密钥替换多个已经存在的密钥:新密钥可以有与被替换的密钥相同的或 ...
- [JQuery]学习总结
1. Jquery 选择多个class 如何精确匹配 $("div[class='class1 class2']").css({ "margin-bottom" ...
- Win7下配置nginx和php5
本文链接:http://www.cnblogs.com/cnscoo/archive/2012/09/03/2668577.html 一.准备工作: OS:Windows7 SP1 Nginx: ng ...
- kruskal --- C++
#include <cstdio> #include <algorithm> using namespace std; struct aaa{ int l,r,w; bool ...
- SSH与EJB 比较
SSH完全的开源产品,如果用SSH就必然会用到大量的开源的东东,从数据库到逻辑到控制到前端,开源产品大拼装, 其中SSH中的三大核心,Struts相当于JSF,spring相当于EJB,hiberna ...