3422饿111111 发表于 2017-2-22 08:57:29

Linux下源码安装LAMP(CentOS 6.8 + Apache2.4 + MySQL5.5 + PHP7)环境

一、简介PHP已经走过了20年的历史,PHP7对于上一版本的PHP5.*,在性能方面有了跨越式的提升,当然也有一些新增的特性和改变,具体大家可以参考网上更为详细的相关资料文档。
   二、系统环境系统平台:CentOS release 6.8 (Final)Apache版本:httpd-2.4.6.tar.gzMySQL 版本:mysql-5.5.53.tar.gzPHP版本:php-7.1.0.tar.gz三、安装前准备1、库文件准备
在安装PHP之前,应先安装PHP需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP支持GIF、PNG和JPEG等图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且中间还会穿插安装一些软件,读者可以按照本节提供的顺序安装。autoconf-2.69.tar.gzfreetype-2.3.5.tar.gzlibgd-2.1.0.tar.gzjpegsrc.v7.tar.gzlibmcrypt-2.5.8.tar.gzlibpng-1.2.31.tar.gzlibxml2-2.7.8.tar.gzzlib-1.2.7.tar.gzapr-1.5.2.tar.gzapr-util-1.3.8.tar.gzpcre-8.32.tar.gzcurl-7.52.1.tar.gz2、安装系统所需要的相关库文件

如果没有安装则用 yum
# yum -y install make gcc gcc-c++ libaio
3、卸载默认的低版本环境目前发行的Linux操作系统,如果选择默认全部安装,就已经安装好了LAMP环境,但是相对版本都比较低。
a. 卸载Apache# rpm -qa |grep httpd说明:检查是否已经安装了httpd软件包

# rpm -e httpd-2.2.3-63.el5.centos--nodeps说明:卸载软件包, --nodeps 如果有依赖关系,也强制卸载# rm -rf /etc/httpd说明:到原来的apache安装目录下,将其所有的安装目录和文件都删掉b. 卸载Mysql# rpm -qa | grep mysql说明:卸载mysqlc. 卸载Php# rpm -qa | grep php说明:卸载PHP4、关闭selinux,清空防火墙规则5、使用ssh shell将windows下的13个源码包上传到/usr/local/src 目录下6、将*.tar.gz源码包逐一解压
四、安装LAMP1、安装libxml2# cd /usr/local/src/libxml2-2.7.8# ./configure --prefix=/usr/local/libxml2
# make && make install2、安装libmcrypt# cd /usr/local/src/libmcrypt-2.5.7# ./configure --prefix=/usr/local/libmcrypt
# make && make install3、安装zlib# cd /usr/local/src/zlib-1.2.7# ./configure --prefix=/usr/local/zlib# make && make install4、安装libpng# cd /usr/local/src/libpng-1.2.10# ./configure --prefix=/usr/local/libpng
# make && make install5、安装jpeg7这个软件包安装有些特殊,其它软件包安装时如果目录不存在,会自动创建,但这个软件包安装时需要手动创建。# 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 /usr/local/src/jpeg-7# ./configure --prefix=/usr/local/jpeg7/ --enable-shared --enable-static
# make && make install6、安装freetype# cd /usr/local/src/freetype-2.3.5# ./configure --prefix=/usr/local/freetype# make# make install7、安装autoconf# cd /usr/local/src/autoconf-2.69# ./configure# make && make install8、安装GD库# cd /usr/local/src/libgd-2.1.0# ./configure -prefix=/usr/local/gd2\--enable-m4_pattern_allow \--with-jpeg=/usr/local/jpeg7 \--with-png=/usr/local/libpng/\--with-zlib=/usr/local/zlib/\--with-freetype=/usr/local/freetype# make#make install9、安装xpm# yum -y install libXpm-devel.x86_6410、安装apr# cd apr-1.5.2
# ./configure --prefix=/usr/local/apr如果报错:config.status: executing libtool commands
rm: cannot remove `libtoolT': No such file or directory
config.status: executing default commands

# yum -y install libtool
11、安装apr-util
# cd apr-util-1.3.8
# ./configure--prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make
# make install
12、安装pcre
# cd pcre-8.32
# ./configure --prefix=/usr/local/pcre
13、安装curl
# cd curl-7.52.1
# ./configure--prefix=/usr/local/curl
# make
# make install
14、安装Apache# cd /usr/local/src/httpd-2.4.6
# ./configure --prefix=/usr/local/apache2 \
# --with-pcre=/usr/local/pcre \
# --with-apr=/usr/local/apr \
# --with-apr-util=/usr/local/apr-util \
# --with-z=/usr/local/zlib
# --enable-so \
# --enable-expires=shared \
# --enable-rewrite=shared \
# --enable-static-support
15、配置Apache
a.设置apache根目录:ServerRoot "/usr/local/apache2"管理员邮箱:ServerAdmin admin@example.com域名设置:ServerName 127.0.0.0    注:写服务器真实IP地址b.修改所有文件的权限 <Directory />    Options FollowSymLinks
    AllowOverride All
    Order deny,allow
    Allow from all
   Satisfy all
</Directory>
<Directory "/usr/local/apache2/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>
c.配置根目录DocumentRoot "/usr/local/apache2/htdocs"d.配置根目录的权限<Directory "/usr/local/apache2/htdocs">    Options Indexes FollowSymLinks
    AllowOverride None
    Order allow,deny
    Allow from all
    Require all granted
</Directory>
e.配置欢迎页(首页) <IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>
f.加载PHP模块和开启其他扩展 AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
Addtype application/x-httpd-php .php .phtml
16、安装MySQL

MySQL自5.5版本以后,就开始使用cmake编译工具了。
tar.gz形式源码编译安装mysql时间要很久,但是用户可以自定义目录结构。

a. 安装系统所需要的库文件及MySQL所依赖的库文件
# yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*
b. 安装cmake
# wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz
# yum -y install cmake
c. 编译安装MySQL 5.5.53

# /usr/sbin/groupadd mysql
# /usr/sbin/useradd -g mysql mysql
# tar -zxvf mysql-5.5.53.tar.gz
# cd mysql-5.5.53
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
# -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
# -DEXTRA_CHARSET=all \
#-DDEFAULT_CHARSET=utf8 \
#-DDEFAULT_COLLATION=utf8_general_ci \
#-DWITH_MYISAM_STORAGE_ENGINE=1 \
#-DWITH_INNOBASE_STORAGE_ENGINE=1 \
#-DWITH_READLINE=1 \
#-DENABLED_LOCAL_INFILE=1 \
#-DMYSQL_DATADIR=/usr/local/mysql/data \
#-DWITH_SSL=yes -DMYSQL_USER=mysql

d. 执行安装,需要等待较长时间
# make
# make install

e. 改变目录拥有者和所属组
# chmod +w /usr/local/mysql
# chown -R mysql:mysql /usr/local/mysql
# ln -s /usr/local/mysql/lib/libmysqlclient.so.16 /usr/lib/libmysqlclient.so.16
# cd support-files
# cp my-large.cnf /etc/my.cnf#复制默认配置文件,适合大型服务器
# cp mysql.server /etc/init.d/mysqld    # 复制启动文件

17、配置并启动MySQL
# vi /etc/my.cnf
a.在下面添加
socket          = /usr/local/mysql/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/data/mysql.pid
tmpdir = /tmp
user = mysql

b.在下面添加
socket          = /usr/local/mysql/mysql.sock
c.初始化mysql
# /usr/local/mysql/scripts/mysql_install_db \
# --basedir=/usr/local/mysql \
# --datadir=/usr/local/mysql/data \
# --user=mysql
d.将mysql加入服务,开机自启动
# cd /usr/local/mysql/bin
# cp -p /usr/local/mysql/bin/mysqld /etc/init.d/mysqld
# chmod +x /etc/init.d/mysqld
# vi /etc/init.d/mysqld (查找并修改以下内容)
basedir=/usr/local/mysql
datadir=/var/mysql/data
# chkconfig --add mysqld
# chkconfig --level 345 mysqld on
e.为MySQL配置环境变量,方便以后的使用
# export PATH=/usr/local/mysql/bin:$PATH
f.启动 mysql
# service mysqld start
g.为MySQL设置密码
# mysql_secure_installation

18、安装PHP

# cd /usr/local/src/php-7.1.0# ./configure --prefix=/usr/local/php\# --with-mysqli=/usr/local/mysql/bin/mysql_config\# --with-apxs2=/usr/local/apache2/bin/apxs\# --with-libxml-dir=/usr/local/libxml2/\# --enable-sockets--enable-xml\# --with-curl=/usr/local/curl\# --with-pdo-mysql=/usr/local/mysql/\# --with-jpeg-dir=/usr/local/jpeg7/\# --with-png-dir=/usr/local/libpng\# --with-gd=/usr/local/gd2/\# --with-freetype-dir=/usr/local/freetype/\# --with-xpm-dir=/usr/include/X11/xpm.h# make# make install19、创建配置PHP文件# cp -p php.ini-development/usr/local/php/etc/php.ini   #复制配置文件,适合开发者
五、测试1、编写info.php文件,查看php配置详细# vi /usr/local/apache2/htdocs/info.php<?phpphpinfo();?>

robinhqf 发表于 2017-4-30 11:20:04

谢谢分享
页: [1]
查看完整版本: Linux下源码安装LAMP(CentOS 6.8 + Apache2.4 + MySQL5.5 + PHP7)环境