centos7 lamp服务源码搭建 -尊龙游戏旗舰厅官网
前言:
记录一下源码安装lamp服务的过程
准备工作
安装编译环境
yum -y install gcc*关闭防火墙\selinux
iptables -f setenforce 0加载软件包镜像
在虚拟机上将这个镜像换上连接即可
复制文件到/usr/src/lamp目录
这里在目录下写一个shell脚本,自动解压一下
#!/bin/bash /bin/ls *tar.gz > ls.list /bin/ls *tgz >> ls.list for a in `cat ls.list` do/bin/tar -zxf $a done rm -rf ls.list解压完成
df -h确认磁盘空间是否充足
安装一些必须软件
注意事项: 目录名不要更改 顺序不要更改
0x01:安装python-devel
#首先需要python的底层环境 yum -y install python-devel [root@localhost lamp]# cd lib libmcrypt-2.5.8/ libpng-1.2.31/ libxml2-2.9.1/ [root@localhost lamp]# cd libxml2-2.9.1/ [root@localhost libxml2-2.9.1]# ./configure --prefix=/usr/local/libxml2/
再输入make
再次输入make install即可
0x02:安装libmcrypt
提供加密算法
[root@localhost lamp]# cd libmcrypt-2.5.8/ [root@localhost libmcrypt-2.5.8]# ./configure --prefix=/usr/local/libmcrypt/ make make install0x03:安装libltdl
[root@localhost lamp]# cd libmcrypt-2.5.8/libltdl/ [root@localhost libltdl]# ./configure --enable-ltdl-install make make install0x04:安装mhash
提供加密方式的扩展
前提条件:安装 lib
0x05:安装mcrypt
提供php相关的加密支持拓展库
[root@localhost mcrypt-2.6.8]# ld_library_path=/usr/local/libmcrypt/lib:/usr/local/lib \./configure --with-libmcrypt-prefix=/usr/local/libmcrypt make make install0x06:安装zlib
提供压缩用途的函数库
t@localhost lamp]# cd zlib-1.2.3/ [root@localhost zlib-1.2.3]# ./configure make make install0x07:libpng
支持png格式图片的库
[root@localhost zlib-1.2.3]# cd ../ [root@localhost lamp]# cd libpng-1.2.31/ [root@localhost libpng-1.2.31]# ./configure --prefix=/usr/local/libpng make make install0x08:jpeg6
提供jpeg格式的图片
先创建目录
[root@localhost libpng-1.2.31]# mkdir /usr/local/jpeg6 [root@localhost libpng-1.2.31]# mkdir /usr/local/jpeg6/bin [root@localhost libpng-1.2.31]# mkdir /usr/local/jpeg6/lib [root@localhost libpng-1.2.31]# mkdir /usr/local/jpeg6/include [root@localhost libpng-1.2.31]# mkdir -p /usr/local/jpeg6/man/man1 root@localhost lamp]# cd jpeg-6b/ [root@localhost jpeg-6b]# ./configure --prefix=/usr/local/jpeg6/ --enable-shared --enable-static发现报错,报错原因是因为缺失libtool
按照下面博客的方法可以解决
解决linux64位安装jpeg 出错make: ./libtool: command not found
安装完成
0x09:安装字体freetype
[root@localhost freetype-2.3.5]# ./configure --prefix=/usr/local/freetype0x10:安装gd
提供php图形拓展库
[root@localhost lamp]# mkdir /usr/local/gd2 [root@localhost lamp]# cd /usr/src/lamp/gd-2.0.35/ [root@localhost gd-2.0.35]# ./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg6/ --with-freetype=/usr/local/freetype/ --with-png=/usr/local/libpng/出现错误
解决方法:
编辑gd_png.c文件
指定一下配置文件路径即可,安装完成
安装apache
在此之前需要装两个工具包
[root@localhost lamp]# cp -r apr-1.4.6 httpd-2.4.7/srclib/apr [root@localhost lamp]# cp -r apr-util-1.4.1 httpd-2.4.7/srclib/apr-util #这两个工具也需要安装一下,具体查百度吧,百度有很详细的安装 cd pcre-8.34/ ./configure make make install [root@localhost lamp]# cd httpd-2.4.7/ [root@localhost httpd-2.4.7]# ./configure --prefix=/usr/local/apache2/ --sysconfdir=/usr/local/apache2/etc --with-include-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared但是在make install时报错(类似这种的)
按照老师发的方法试一下:
因为之前编译过,所以要清除下
make clean但又遇到一个错误,apache安装是编译安装,安装路径不是默认路径,apache服务没有添加到linux服务中
可以参考下面的方法
启动服务发现成功
安装mysql
首先需要安装这个工具
oot@localhost lamp]# yum -y install cmake其次安装下语法解释器
[root@localhost lamp]# yum -y install bison
然后建立一个用户来使数据库运行
接下来按照老师的命令
执行发现报错
解决方法
缺失的包我们已经安装了但如果还是报错就按照下面的进行操作
#删掉原来的目录 rm -rf mysql-5.5.23 #再次解压 tar -zxf mysql-5.5.23.tar.gz查看一下包是否安好
[root@localhost lamp]# rpm -q ncurses ncurses-5.9-14.20130511.el7_4.x86_64 [root@localhost lamp]# rpm -q ncurses-devel ncurses-devel-5.9-14.20130511.el7_4.x86_64再进入mysql目录中,进行编译
安装成功,说明这里的这个软件包是有先后顺序的,必须先安装ncurses和ncurses-devel才行
接下来就是
make&&make install进入mysql目录更改一些权限
cd /usr/local/mysql/ chown -r mysql:mysql . #数据库初始化 [root@localhost mysql]# /usr/local/mysql/scripts/mysql_install_db --user=mysql
数据库初始化成功,接下来授权一下表和库的权限
开启mysql
[root@localhost mysql]# /usr/local/mysql/bin/mysqld_safe --user=mysql如果开启没成功,就用上面的初始化的命令再来一次
如果卡到这里的话,用下面的命令杀死mysql的进程,再初始化一遍数据库再启动即可
发现3306端口已经打开了,数据库已经启动了
添加开机自启
[root@localhost mysql]# vim /etc/rc.d/rc.local
登陆mysql
直接登陆会不那么安全,设置一个密码
再次登陆就需要密码了,记住要删除history,因为会记录设置的密码
安装php
接下来就是最后一步了,安装php
#预先准备好的环境,先要安装上 yum -y install libtool*接下来修改一下配置文件以支持数据库的内容
[root@localhost /]# vim /usr/local/gd2/include/gd_io.h
(注:这里的位置是错的,正确位置往下面看)
添加上这一行代码,保存退出
接下来就是安装php,需要指定之前安装过的软件路径,所以有点长
./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-png-dir=/usr/local/libpng/ \ --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 --with-pdo-mysql=/usr/local/mysql --without-pear但这里会报错configure: error: png.h not found.,按道理说上面我们已经安装过了libpng,但是还是不行,查了百度,发现还需要libpng-devel,所以也要安装一下
yum install libpng-devel
安装成功,接下来make的时候又报错了
老师也出现了这个问题,最后发现是我们在vim /usr/local/gd2/include/gd_io.h编辑这个文件的时候,那一行加错位置了,应该加在这个地方
修改好之后保存,再次进入php目录进行make编译
出现这个页面就没什么问题了继续make insatll
终于不报错了
创建一个存放配置文件的目录
[root@localhost php-5.4.25]# mkdir /usr/local/php/etc复制一下主配置文件
[root@localhost php-5.4.25]# cp php.ini-production /usr/local/php/etc/php.ini #老师的配置文件存在的目录 vim /usr/local/apache2/etc #但我的是在/etc目录下 vi /etc/httpd/httpd.conf #只是目录不同而已,其他修改都一样往下面拉,找了好久才找到,添加指定的那一行即可保存退出
重启apache
测试
apache与php
下面就进行测试,在/usr/local/apache2/htdocs/目录下创建一个index.php,写入
<?phpphpinfo(); >进行访问
ok,说明apache能与php一同工作了
apache与mysql
下面进行测试apache是否能和mysql一起工作
在index.php页面写入如下代码即可测试
<?php $link=mysql_connect('localhost','root','123456'); if($link) echo "hello,lemon"; mysql_close(); ?>
说明mysql能与apache一起工作
因为命令式的mysql很难去操作,所以安装一下phpmyadmin
[root@localhost mysql]# cd /usr/src/lamp/ [root@localhost lamp]# cp -r phpmyadmin-4.1.4-all-languages /usr/local/apache2/htdocs/phpmyadmin进入phpmyadmin目录,生成它的配置文件
[root@localhost phpmyadmin]# cp config.sample.inc.php config.inc.php #修改下访问类型 vim config.inc.php #将cookie改成http
进行访问
到此,源码安装lamp服务全部搞好了(哇真的真的真的太恶心了)
总结
感觉自己独立解决问题的能力真的提高了不少,耐心也增加了,也感觉搭建好之后挺爽的!!!
总结
以上是尊龙游戏旗舰厅官网为你收集整理的centos7 lamp服务源码搭建的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: