下载地址可以到各个软件的官网上下载,也可以到百度云盘下载:https://pan.baidu.com/s/1bozAghT,注意:在安装时一定要手敲,千万不要复制粘贴,否者会有报错哟。
- apr-1.5.2.tar.gz
- apr-util-1.5.4.tar.gz
- curl-7.52.1.tar.gz
- freetype-2.7.tar.gz
- httpd-2.4.25.tar.gz
- jpegsrc.v7.tar.gz
- jpgraph-4.0.2.tar.gz
- libevent-2.1.8-stable.tar.gz
- libgd-2.1.0.tar.gz
- libmcrypt-2.5.8.tar.gz
- libmemcached-1.0.18.tar.gz
- libpng-1.5.28.tar.gz
- libxml2-sources-2.9.7.tar.gz
- mcrypt-2.6.8.tar.gz
- memcache-3.0.8.tgz
- memcached-1.4.34.tar.gz
- mhash-0.9.9.9.tar.gz
- mysql-5.6.41.tar.gz
- ncurses-6.0.tar.gz
- pcre-8.39.gz
- php-5.6.29.tar.gz
- zlib-1.2.10.tar.gz
同时需要配置yum源,并且yum源可以正常使用,yum如何配置在这里就不做说明了。另外需要在防火墙中允许80、443、3306这三个端口的tcp协议通过。
libxml是一个用来解析XML文档的函数库。它用C语言写成, 并且能为多种语言所调用,例如C语言,C++,XSH。C#, Python,Kylix/Delphi,Ruby,和PHP等。Perl中也可以使用XML::LibXML模块。它最初是为GNOME开发的项目,但现在可以用在各种各样的方面。libXML 代码可移植性非常好,因为它基于标准的ANSI C库, 并采用MIT许可证。安装步骤如下:
tar -zxvf libxml2-2.9.1.tar.gz
yum -y install python-devel gcc-c++
cd /lamp/libxml2-2.9.1
./configure --prefix=/usr/local/libxml2/ && make && make install
libmcrypt是加密算法扩展库。支持DES, 3DES, RIJNDAEL, Twofish, IDEA, GOST, CAST-256, ARCFOUR, SERPENT, SAFER+等算法。安装步骤如下:
tar -zxvf libmcrypt-2.5.8.tar.gz
cd /lamp/libmcrypt-2.5.8
./configure --prefix=/usr/local/libmcrypt/ && make && make install
libltdl也在libmcrypt源码目录中,非新软件,安装步骤如下:
cd /lamp/libmcrypt-2.5.8/libltdl
./configure --enable-ltdl-install && make && make install
Mhash是基于离散数学原理的不可逆向的PHP加密方式扩展库,其在默认情况下不开启。mhash的可以用于创建校验数值,消息摘要,消息认证码,以及无需原文的关键信息保存(如密码)等。安装步骤如下:
tar -zxvf mhash-0.9.9.9.tar.gz
cd /lamp/mhash-0.9.9.9
./configure && make && make install
mcrypt 是PHP里面重要的加密支持扩展库。Mcrypt库支持20多种加密算法和8种加密模式。安装步骤如下:
tar -zxvf mcrypt-2.6.8.tar.gz
cd /lamp/mcrypt-2.6.8
LD_LIBRARY_PATH=/usr/local/libmcrypt/lib:/usr/local/lib ./configure --with-libmcrypt-prefix=/usr/local/libmcrypt && make && make install
zlib是提供数据压缩用的函式库,由Jean-loup Gailly与Mark Adler所开发,初版0.9版在1995年5月1日发表。zlib使用DEFLATE算法,最初是为libpng函式库所写的,后来普遍为许多软件所使用。此函式库为自由软件,使用zlib授权。安装步骤如下:
tar -zxvf zlib-1.2.3.tar.gz
cd /lamp/zlib-1.2.3
CFLAGS="-O3 -fPIC" ./configure && make && make install >> /root/zlib.log
libpng 软件包包含 libpng 库.这些库被其他程式用于解码png图片。安装步骤如下:
tar -zxvf libpng-1.2.31.tar.gz
cd /lamp/libpng-1.2.31
./configure --prefix=/usr/local/libpng && make && make install
用于解码.jpg和.jpeg图片。安装步骤如下:
tar -zxvf jpegsrc.v7.tar.gz
mkdir /usr/local/jpeg7
mkdir /usr/local/jpeg7/bin
mkdir /usr/local/jpeg7/lib
mkdir /usr/local/jpeg7/include
mkdir -p /usr/local/jpeg7/man/man1
cd /lamp/jpeg-7
./configure --prefix=/usr/local/jpeg7/ --enable-shared --enable-static && make && make install
FreeType库是一个完全免费(开源)的、高质量的且可移植的字体引擎,它提供统一的接口来访问多种字体格式文件,包括TrueType, OpenType, Type1, CID, CFF, Windows FON/FNT, X11 PCF等。支持单色位图、反走样位图的渲染。FreeType库是高度模块化的程序库,虽然它是使用ANSI C开发,但是采用面向对象的思想,因此,FreeType的用户可以灵活地对它进行裁剪。安装步骤如下:
tar -zxvf greetype-2.3.5.tar.gz
cd /lamp/freetype-2.3.5
./configure --prefix=/usr/local/freetype/ && make && make install
GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。 在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。安装步骤如下:
tar -zxvf libgd-2.1.0.tar.gz
cd /lamp/ libgd-2.1.0
./configure --prefix=/usr/local/gd2/ --with-jpeg=/usr/local/jpeg7/ --with-freetype=/usr/local/freetype/ --with-png=/usr/local/libpng/ && make && make install
rpm -qa | grep httpd
如果有,就卸载httpd:rpm -e httpd –nodeps
tar -zxvf pcre-8.34.tar.gz
cd pcre-8.34
./configure && make && make install
tar -zxvf apr-1.4.6.tar.gz
tar -zxvf apr-util-1.4.1.tar.gz
cp -r apr-1.4.6 httpd-2.4.7/srclib/apr
cp -r apr-util-1.4.1 httpd-2.4.7/srclib/apr-util
cd/lamp/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 && make install
cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
vim /etc/rc.d/init.d/httpd 在第一行#!/bin/sh下增加两行文字:
#chkconfig: 234 20 80
#description: apache
chkconfig --add httpd
chkconfig --level 345 httpd on
在/etc/profile文件中的最后一行添加“export PATH=/usr/local/apache2/bin/:$PATH”
source /etc/profil
systemctl start httpd
在浏览器中输入安装Apache软件所在主机的IP地址,查看是否有It Works文字。
rpm -qa | grep mysql
如果有卸载:rpm -e mysql --nodeps
同时卸载:rpm -e mysql-server
yum install -y ncurses-devel
tar -zxvf ncurses-5.9.tar.gz
cd cd /lamp/ncurses-5.9
./configure --with-shared --without-debug --without-ada --enable-overwrite && make && make install
yum install -y cmake bison autoconf
groupadd mysql
useradd -g mysql -s /usr/sbin/nologin mysql
mkdir -p /var/mysql/data/
chown mysql.mysql -R /var/mysql/
tar -zxvf /lamp/ mysql-5.6.16.gz
cd /lamp mysql-5.6.16
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DMYSQL_DATADIR=/var/mysql/data \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_ARCHIVE_STORAGE_ENGINE= \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_TCP_PORT=3306make && make install
在/usr/local/mysql/文件夹下添加my.ini文件,内容如下:
[client]
port=3306
[mysql]
default-character-set=utf8
[mysqld]
port=3306
server_id=1
basedir="/usr/local/mysql/"
datadir="/var/mysql/data/"
log-error="/var/mysql/Logs/mysql.log"
slow-query-log-file="/var/mysql/Logs/mysql_slow_query.log"
character-set-server=utf8
default-storage-engine=MYISAM
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
explicit_defaults_for_timestamp=true
interactive_timeout=120
wait_timeout=120
log_error_verbosity=1
slow_query_log=0
long_query_time=2
local-infile=0
skip-external-locking
skip-ssl
#skip-name-resolve
#skip-networking
#enable-named-pipe
#bind-address=127.0.0.1
#log-bin=mysql-bin
#binlog_format=mixed
max_connections=300
query_cache_size=0
performance_schema_max_table_instances=600
table_definition_cache=400
key_buffer_size=64M
sort_buffer_size=512kb
read_buffer_size=1M
join_buffer_size=2M
read_rnd_buffer_size=4M
max_allowed_packet=16M
table_open_cache=256
tmp_table_size=64M
max_heap_table_size=64M
thread_cache_size=16
myisam_max_sort_file_size=64G
myisam_sort_buffer_size=32M
innodb_buffer_pool_size=128M
innodb_log_file_size=32M
innodb_log_buffer_size=8M
innodb_file_per_table=1
innodb_flush_log_at_trx_commit=1
innodb_flush_method=normal
innodb_thread_concurrency=0
innodb_lock_wait_timeout=50
[mysqldump]
quick
max_allowed_packet=16M
[mysql]
no-auto-rehash
[myisamchk]
key_buffer_size=20M
sort_buffer_size=20M
read_buffer=2M
write_buffer=2M
[mysqlhotcopy]
interactive-timeout
[mysqld_safe]
open-files-limit=8192
chown -Rf mysql:mysql /usr/local/mysql
cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 2345 mysqld on
在/etc/profile文件中的最后一行添加“export PATH=/usr/local/mysql/bin/:$PATH' ”
source /etc/profile
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/var/mysql/data
systemctl start mysqld
/usr/local/mysql/bin/mysqladmin -u root password 'root'
rpm -qa | grep php
如果有,卸载:rpm -e php
yum -y install libxml2-devel openssl openssl-devel curl curl-devel libjpeg-devel libpng-devel freetype-devel pcre-devel libxslt libxslt-devel bzip2 bzip2-devel libtool-ltdl* libtool* readline readLine-devel
tar zxf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8
./configure
make && make install
tar-zxvf php-5.6.29.tar.gz
cd php-5.6.29
./configure --prefix=/usr/local/php \
--with-config-file-scan-dir=/usr/local/php/etc/ \
--enable-inline-optimization \
--enable-opcache \
--enable-session \
--enable-debug \
--enable-rpath \
--enable-shared \
--enable-fpm \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-pdo-sqlite \
--with-sqlite3 \
--enable-mbregex \
--with-gettext \
--enable-mbstring \
--with-iconv \
--with-mhash \
--with-openssl \
--enable-bcmath \
--enable-soap \
--with-libxml-dir=/usr/local/libxml2/ \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-sockets \
--with-curl \
--with-zlib \
--enable-zip \
--with-bz2 \
--with-gd \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-apxs2=/usr/local/apache2/bin/apxs \
--enable-xml \
--with-xmlrpc \
--with-pdo-sqlite \
--with-pear \
--with-kerberos \
--with-pcre-regex \
--with-libdir=lib \
--enable-ftp \
--with-readlinemake && make install
mkdir /usr/local/php/etc/
cp /lamp/php-5.6/php.ini-production /usr/local/php/etc/php.ini
vi /usr/local/apache2/conf/httpd.conf
找到
#ServerName www.example.com:80
改成
ServerName localhost:80找到:
AddType application/x-gzip .gz .tgz
在该行下面添加:
AddType application/x-httpd-php .php
找到:
DirectoryIndex index.html
将该行改为:
DirectoryIndex index.php index.html
在文件最后添加:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
phpMyAdmin 是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程式一样在网页服务器上执行,但是您可以在任何地方使用这些程式产生的HTML页面,也就是于远端管理MySQL数据库,方便的建立、修改、删除数据库及资料表。也可借由phpMyAdmin建立常用的php语法,方便编写网页时所需要的sql语法正确性。安装步骤如下:
cp -r phpMyAdmin-4.1.4-all-languages /usr/local/apache2/htdocs/phpmyadmin
cd /usr/local/apache2/htdocs/phpmyadmin
cp config.sample.inc.php config.inc.php
vim config.inc.php
修改
$cfg[‘Servers’][$i][auth_type]=’cookie’;
$cfg[‘Servers’][$i][auth_type]=’http’;
在Apache网站运行的根目录下编写文件index.php,文件内容具体如下所示。
phpinfo();
?>
如果出现了LAMP的具体配置信息,就说明Apache和PHP组件正常运行。在浏览器中输入http://192.168.1.128/phpmyadmin/,出现MySQL的登录表单,就说明,MySQL正常运行。到此为止,LAMP环境搭建成功。
拓展:
--prefix=/usr/local/PHP php 安装目录
--with-apxs2=/usr/local/apache/bin/apxs 表示使用apache2.0以上版本,apxs表示使用的apache1.0版本
--with-config-file-path=/usr/local/PHP/etc 指定php.ini位置
--with-MySQL=/usr/local/mysql mysql安装目录,对mysql的支持
--with-MySQLi=/usr/local/mysql/bin/mysql_config mysqli文件目录,优化支持
--enable-safe-mode 打开安全模式
--enable-ftp 打开ftp的支持
--enable-zip 打开对zip的支持
--with-bz2 打开对bz2文件的支持
--with-jpeg-dir 打开对jpeg图片的支持
--with-png-dir 打开对png图片的支持
--with-freetype-dir 打开对freetype字体库的支持
--without-iconv 关闭iconv函数,种字符集间的转换
--with-libXML-dir 打开libxml2库的支持
--with-XMLrpc 打开xml-rpc的c语言
--with-zlib-dir 打开zlib库的支持
--with-gd 打开gd库的支持
--enable-gd-native-ttf 支持TrueType字符串函数库
--with-curl 打开curl浏览工具的支持
--with-curlwrappers 运用curl工具打开url流
--with-ttf 打开freetype1.*的支持,可以不加了
--with-xsl 打开XSLT 文件支持,扩展了libXML2库 ,需要libxslt软件
--with-gettext 打开gnu 的gettext 支持,编码库用到
--with-pear 打开pear命令的支持,PHP扩展用的
--enable-calendar 打开日历扩展功能
--enable-mbstring 多字节,字符串的支持
--enable-bcmath 打开图片大小调整,用到zabbix监控的时候用到了这个模块
--enable-sockets 打开 sockets 支持
--enable-exif 图片的元数据支持
--enable-magic-quotes 魔术引用的支持
--disable-rpath 关闭额外的运行库文件
--disable-debug 关闭调试模式
--with-mime-magic=/usr/share/file/magic.mime 魔术头文件位置
CGI方式安装才用的参数
--enable-fpm 打上PHP-fpm 补丁后才有这个参数,CGI方式安装的启动程序
--enable-fastCGI 支持fastcgi方式启动PHP
--enable-force-CGI-redirect 同上 ,帮助里没有解释
--with-ncurses 支持ncurses 屏幕绘制以及基于文本终端的图形互动功能的动态库
--enable-pcntl freeTDS需要用到的,可能是链接mssql 才用到
mhash和mcrypt算法的扩展
--with-mcrypt 算法
--with-mhash 算法
--with-gmp
--enable-inline-optimization
--with-openssl openssl的支持,加密传输时用到的
--enable-dbase
--with-pcre-dir=/usr/local/bin/pcre-config perl的正则库案安装位置
--disable-dmalloc
--with-gdbm dba的gdbm支持
--enable-sigchild
--enable-sysvsem
--enable-sysvshm
--enable-zend-multibyte 支持zend的多字节
--enable-mbregex
--enable-wddx
--enable-shmop
--enable-soap