lamp源码安装
先从Apache开始装-》MySQL-》PHP PHP在编译的时候需要用到MySQL的一些参数,需要用到Apache的参数。 准备工作:
1、查看系统中是否有自带的Apache
如果提示你不能卸载,有依赖先卸载掉
rpm -e gnome-user-shar 然后再卸载httpd
rpm -e httpd 2、必须安装gcc、GCC-c++(设置yum源)
yum install gcc* 3、关闭防火墙、selinux 如何确定报错:
1)、安装过程停止。
2)、停止之后,一个页面都出现error或warning 如何确定安装成功:
一般情况下进入安装目录,确认目录中是否有程序出现。 1、安装Apache
mkdir /Apache
准备工作:
1)、编译安装apr,Apache可移植运行库,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。在早期的Apache版本中,应用程序本身必须能够处理各种具体操作系统平台的细节,并针对不同的平台调用不同的处理函数。随着Apache的进一步开发,Apache组织决定将这些通用的函数独立出来并发展成为一个新的项目。
mkdir /Apache/apr ./configure --prefix=/Apache/apr/
注意:在执行configure的时候必须进入到这个安装包的目录下。
make
make install 2)、编译安装apr-util,需要在apr的基础上安装,apr-util只不过比在apr的基础上提供了更多的底层支持接口。 mkdir /Apache/apr-util ./configure --prefix=/Apache/apr-util --with-apr=/Apache/apr make make install 3)、编译安装pcre,是一个工具库,提供了正则表达式库。很多开源软件都需要使用比如Apache和PHP。 mkdir /Apache/pcre ./configure --prefix=/Apache/pcre make make install 4)、编译安装Apache。 ./configure --prefix=/Apache/ --with-apr=/Apache/apr --with-apr-util=/Apache/apr-util --with-pcre=/Apache/pcre 5)、启动Apache测试是否能够正常使用,/Apache/bin/apachectl start 7、安装MySQL 1)、安装cmake工具,和configure一样,用来输出各种各样的makefile文件。 yum install cmake
2)、安装bison软件,是一个自由软件,用于自动生成语法分析器程序。
cd /media/Packages/
yum install bison-2.4.1-5.el6.i686.rpm
rpm -q bison-2.4.1-5.el6.i686.rpm 查看安装上了木有
3)、安装perl语言,是一种功能丰富的计算机器程序语言,安装它是因为MySQL中有很多库和组件正好是perl语言中有的。
yum -y install perl* 或单独安装
autoconf
[root@lichihua Packages]# yum install autoconf-2.63-5.1.el6.noarch.rpm
automake
yum install automake-1.11.1-1.2.el6.noarch.rpm
zlib*,安装zlib函数库,是提供数据压缩用的函数库。(有可能已经安装,使用rpm -q zlib查看)
rpm -q zlib 如果安装了就不安了如果没安装yum install zlib*
flex*
yum install flex* libtool-ltdl-devl*
yum install libtool-ltdl-devel* 4)、安装ncurses和ncurses-devel库,提供字符端终端处理库。包括一些面板和菜单,提供了一套控制光标,建立窗口改变前景背景颜色以及数据处理操作的函数。
yum install ncurses* 这样上面两个都安装成功了 5)、创建MySQL安装目录和数据文件放置的目录
想把MySQL装在哪就新建文件夹在哪这里 mkdir /MySQL/data
6)、解压源码包 7)、使用cmake进行编译。
cmake -DCMAKE_INSTALL_PREFIX=/apache/mysql -DMYSQL_UNIX_ADDR=/apache/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/apache/mysql/data -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1 -DWITH_MYISAM_STORAGE_ENGINE=1 由于mkdir /MySQL/data
-DCMAKE_INSTALL_PREFIX=/apache/mysql改成-DCMAKE_INSTALL_PREFIX=/MySQL
-DMYSQL_UNIX_ADDR=/apache/mysql/mysql.sock改成-DMYSQL_UNIX_ADDR=/MySQL/mysql.sock
-DMYSQL_DATADIR=/apache/mysql/data改成-DMYSQL_DATADIR=/MySQL/data 注意:-DENABLE_DOWNLOASDS自动下载可选文件,比如自动下载谷歌的测试包,如果不安装编译不过去
注意:如果配置出错需要删除CMakeCache.txt,然后重新编译。
make
make install 8)、为了安全起见需要有专门的系统用户来进行运行MySQL
groupadd mysql 组
useradd -r -g mysql mysql 第一个为组 第二个为 新建的用户 cat /etc/passwd
mysql:x:496:501::/home/mysql:/bin/bash
vi /etc/passwd(可不改)
mysql:x:496:501::/home/mysql:sshd:/sbin/nologin 更改mysql安装目录的所有者:
chown -R mysql:mysql /MySQL 9)、初始化mysql数据库
注意:必须进入到MySQL的安装目录下执行。
/MySQL/scripts/mysql_install_db --user=mysql --datadir=/MySQL/data/ 10)、复制mysql服务启动配置文件
cp /MySQL/support-files/my-huge.cnf /etc/my.cnf
注意:如果已经提示/etc/my.cn文件存在则覆盖。 11)、启动mysql
/MySQL/bin/mysqld --user=mysql --datadir=/MySQL/data/ & 注意:如果已经开启那么应该用ps aux | grep mysql 能够看到 关闭在安装目录下使用 mysqladmin -u root -p shutdown /MySQL/bin/mysqladmin -u root -p shutdown 12)、进入到MySQL测试一下/apache/mysql/bin/mysql -uroot -p默认密码为空。
/MySQL/bin/mysql -u root -p 注意:默认的时候密码为空。 13)、修改密码
/MySQL/bin/mysqladmin -u root -p password '1234@abcd' 问题:
1、[root@localhost mysql]# 150725 17:16:45 [ERROR] Unknown collation: 'utf8-general_ci' 原因:不认识utf8-general_ci校验字符集,只需要重新修正就可以,在my.cnf中的[mysqld]下面加入character_set_server=utf8即可 8、安装PHP
1)、安装apxs(已经安装放在安装目录下的bin/apxs目录下) 2)、安装libxml库。
xml,可扩展标记语言,HTML有些相同的地方,可以自定义一些标签,但是HTML是用来标记的,XML是用来存储数据的,用来多种程序间共享数据用的。 libxml库,提供了对XML文档的各种操作方法。 3)、安装zlib函数库,是提供数据压缩用的函数库(有可能已经安装)。 4)、安装jpeg6,用于解码.jpg和.jpeg图片
./configure --prefix=/apache/jpeg --enable-shared --enable-static --enable-shared与--enable-static参数分别为建立共享库和静态库使用的libtool 注意:以下目录必须手动创建。
mkdir /apache/jpeg
mkdir /apache/jpeg/bin
mkdir /apache/jpeg/lib
mkdir /apache/jpeg/include
mkdir -p /apache/jpeg/man/man1 5)、安装libpng,用于解码.png图片 6)、安装freetype,FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。 7)、安装gd2,用于处理图像,GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。 在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。
./configure --prefix=/apache/gd2 --with-jpeg=/apache/jpeg --with-freetype=/apache/freetype --with-png=/apache/libpng --with-zlib=/apache/zlib 注意:
1、gd库要处理jpeg\字体\png文件,指明应用的位置。
2、png错误,解决方法。(如果不解决会有问题,安装GD2前)
vi gd_png.c
把#include "png.h" 修改为 #include "/apache/libpng/include/png.h" 8)、因为PHP 5.4的版本,检测gd库会有问题,手工修改。(安装完GD2后)
vi /apache/gd2/incude/gd_io.h
在typedef struct gdIOCt
{
void (*data);#加入此句
} 9)、安装libmcrypt库,是一个加密算法扩展库。 10)、安装curl,是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP、FTP、TELNET等。 11)、编译PHP ./configure --prefix=/apache/php/ --with-config-file-path=/apache/php/etc --with-apxs2=/apache/bin/apxs --with-mysql=/apache/mysql/ --with-libxml-dir=/apache/libxml/ --with-jpeg-dir=/apache/jpeg/ --with-png-dir=/apache/libpng/ --with-freetype-dir=/apache/freetype/ --with-gd=/apache/gd2/ --with-mcrypt=/apache/libmcrypt/ --with-mysqli=/apache/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets --with-pdo-mysql=/apache/mysql/ --without-pear --with-curl=/apache/curl/ 注意:
1、/apache/php/etc需要自己创建。
2、如果提示
Sorry, I cannot run apxs. Possible reasons follow: 1. Perl is not installed
2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs
3. Apache was not built using --enable-so (the apxs usage page is displayed) The output of /apache/bin/apxs follows:
./configure: line 8421: /apache/bin/apxs: No such file or directory
configure: error: Aborting
说明没有安装perl,或者没有找到apxs的目录,装Apache时已经安装。 11)、创建/apache/php/etc目录,放置配置文件 12)、复制初始配置文件。 13)、修改apache配置文件让apache能够认识php文件 14)、重新启动Apache服务
lamp源码安装的更多相关文章
- Linux LAMP源码安装
查看编译参数 # httpd cat /app/httpd24/build/config.nice # mysql cat /app/mysql/docs/INFO_BIN # php php -i ...
- LAMP源码安装,搭建zabbix监控
#LAMP#httpd-2.2.32#mysql-5.7.17-linux-glibc2.5-x86_64 二进制压缩版#php5.3.27 1.系统环境优化检查 sed -i 's/SELINUX= ...
- lamp 源码安装
#!/bin/bash #description:mysql-.tar apache2.4.23 php5.6.27 function check_ok(){ ] then echo "-- ...
- Lamp源码包安装实录
Lamp源码包安装实录 附件中是安装步骤,下载站点里包含视频(http://down.51cto.com/data/460776) 本文出自 "李晨光原创技术博客" 博客,请务必保 ...
- CentOS 6.3下源码安装LAMP(Linux+Apache+Mysql+Php)环境【转载】
本文转载自 园友David_Tang的博客,如有侵权请联系本人及时删除,原文地址: http://www.cnblogs.com/mchina/archive/2012/11/28/2778779.h ...
- 以源码安装的lamp环境为依托,源码安装zabbix监控系统
1.源码安装lamp环境 1)安装httpd, 以源码httpd-2.4.33为基础,解压后,执行./configure --prefix=/usr/local/ --sysconfdir=/etc/ ...
- linux应用之Lamp(apache+mysql+php)的源码安装(centos)
Linux+Apache+Mysql+Php源码安装 一.安装环境: 系统:Centos6.5x64 Apache: httpd-2.4.10.tar.gz Mysql: mysql-5.6.20-l ...
- Httpd服务进阶知识-LAMP源码编译安装
Httpd服务进阶知识-LAMP源码编译安装 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 想必大家都知道,动态资源交给fastcgi程序处理,静态资源依旧由httpd服务器处理 ...
- LAMP源码编译安装
php加速器 XCache 快速而且稳定的PHP opcode缓存,经过严格测试且被大量用于生产环境. 项目地址:http://xcache.lighttpd.net/,收录EPEL源 实现XCach ...
随机推荐
- SwipeRefreshLayout,用最少的代码定制最美的上下拉刷新样式
下拉刷新框架其实有很多,而且质量都比较高.但是在日常开发中,每一款产品都会有一套自己独特的一套刷新样式.相信有很多小伙伴在个性化定制中都或多或少的遇到过麻烦.今天我就给大家推荐一个在定制方面很出彩的一 ...
- XmlDocument.Load(url) 本地和http远程
XmlDocument.Load(url) 的使用 远程: string path = @"http://localhost:8080/Source/XMLConfig.xml"; ...
- ionic3 使用html2canvas将数据导出为图片,并下载本地
1.安装html2canvas npm install --save html2canvas 官方网站 https://html2canvas.hertzen.com/ 2.在需要的组件中引入html ...
- 性能测试四十八:Jenkins+Ant+Jmeter系统部署
工作步骤: 1.开发提交代码SVN/Git 2.代码编译.打war包 3.上传war包到服务器 4.重启web服务器 5.开始测试/自动化测试 6.发测试结果 Jenkins工作: 1.开发提交代码G ...
- 微信开发者工具_小程序js文件后面的M代表什么
Git 版本管理为了方便开发者更简单快捷地进行代码版本管理,简化一些常用的 Git 操作,以及降低代码版本管理使用的学习成本,开发者工具集成了 Git 版本管理面板.A: 增加的文件.C: 文件的一个 ...
- python 之 列表与字典
1.4 列表与字典 列表与字典,这两种类型,都是各种类型的集合,以列表为例,如果列表中包含列表,就形成嵌套. 这两种类型几乎是所有python脚本的主要工作组件 . 这种结构信息是可变的可修改的.不像 ...
- Python练习题
内置函数 # 5.随意写一个20行以上的文件# 运行程序,先将内容读到内存中,用列表存储.# 接收用户输入页码,每页5条,仅输出当页的内容 def user_check(filename,num=5) ...
- Python函数之内置函数
截止导Python 3.6 目前内置函数有68个 以下是对这些内置函数的分类 一:作用域相关 以字典的形式返回作用域中的名字 locals # 返回本地作用域的所有名字 globals # 返回全局作 ...
- httpstatus类的状态有哪些
HTTP Status Code 常见的状态码: HTTP: Status 200 – 服务器成功返回网页HTTP: Status 404 – 请求的网页不存在HTTP: Status 503 – 服 ...
- python文件的分类
# 0.获取所有的文件名称列表import os import shutilos.chdir("files")file_list = os.listdir("./&quo ...