1.安装Apache2.4.25
一、系统环境 系统平台:CentOS 6.8 64位 Apache版本: httpd-2.4.25.tar.gz MySQL版本: mysql-5.7.18.tar.gz PHP版本: php-7.1.4.tar.gz phpMyAdmin版本:phpMyAdmin-4.7.0-all-languages.tar.gz 二、安装前准备 在安装PHP之前,应先安装PHP需要的最新版本库文件,例如libxml2、libmcrypt以及GD2库等文件。安装GD2库是为了让PHP支持GIF、PNG和JPEG等图片格式,所以在安装GD2库之前还要先安装最新的zlib、libpng、freetype和jpegsrc等库文件。而且整个环境的搭建中还会穿插安装一些扩展和软件,可按照步骤安装。 1、准备所需库文件(有的安装了后面也没用,但是统统安装吧) autoconf-2.69.tar.gz freetype-2.7.1.tar.gz libgd-2.1.0.tar.gz jpegsrc.v9.tar.gz libmcrypt-2.5.8.tar.gz libpng-1.6.29.tar.gz libxml2-2.7.8.tar.gz zlib-1.2.11.tar.gz apr-1.5.2.tar.gz apr-util-1.5.4.tar.gz pcre-8.40.tar.gz curl-7.54.0.tar.gz 2、安装系统所需依赖库(由于在后面的安装过程中遇到很多缺少依赖的问题,所以现在整理了一下,集中在这一步安装) yum -y install gcc gcc-c gcc-g77 make cmake bison ncurses-devel autoconf automake zlib* fiex* libxml* libmcrypt* libtool-ltdl-devel* libaio libaio-devel bzr libtool ncurses5-devel imake libxml2-devel expat-devel 3、卸载之前安装的旧版本环境 a、使用yum remove xxxx命令 b、使用rpm -e xxxx命令 c、删除相关文件rm -rf xxxx
4、将准备好的.tar.gz软件包上传到服务器的/usr/local/src目录下 5、使用tar -zxvf xxxx命令逐一解压软件包 三、安装依赖库 1、安装libxml2
# cd /usr/local/src/libxml2-2.7.8
# ./configure --prefix=/usr/local/libxml2
# make && make install
2、安装libmcrypt
# cd /usr/local/src/libmcrypt-2.5.8
# ./configure --prefix=/usr/local/libmcrypt
# make && make install
3、安装zlib
# cd /usr/local/src/zlib-1.2.11
# ./configure --prefix=/usr/local/zlib
# make && make install
4、安装libpng
# cd /usr/local/src/libpng-1.6.29
# ./configure --prefix=/usr/local/libpng
# make && make install
5、安装jpeg9
这个软件包安装有些特殊,其它软件包安装时如果目录不存在,会自动创建,但这个软件包安装时需要手动创建。
# mkdir /usr/local/jpeg9
# mkdir /usr/local/jpeg9/bin
# mkdir /usr/local/jpeg9/lib
# mkdir /usr/local/jpeg9/include
# mkdir -p /usr/local/jpeg9/man/man1
# cd /usr/local/src/jpeg-9
# ./configure --prefix=/usr/local/jpeg9/ --enable-shared --enable-static
# make && make install
6、安装freetype
# cd /usr/local/src/freetype-2.7.1
# ./configure --prefix=/usr/local/freetype
# make && make install
7、安装autoconf
# cd /usr/local/src/autoconf-2.69
# ./configure
# make && make install
8、安装GD库
# cd /usr/local/src/libgd-2.1.0
# ./configure -prefix=/usr/local/gd2
--with-jpeg=/usr/local/jpeg9
--with-png=/usr/local/libpng/
--with-zlib=/usr/local/zlib/
--with-freetype=/usr/local/freetype
# make && make install
9、安装xpm
# yum -y install libXpm-devel.x86_64
10、安装apr
# cd apr-1.5.2
# ./configure --prefix=/usr/local/apr
# make && make install
11、安装apr-util
# cd apr-util-1.5.4
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
# make && make install
12、安装pcre
# cd pcre-8.40
# ./configure --prefix=/usr/local/pcre
# make && make install
13、安装curl
# cd curl-7.54.0
# ./configure --prefix=/usr/local/curl
# make && make install 四、安装Apache 1、下载源码 # cd /usr/local/src # wget http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.25.tar.gz 2、解压 # tar -zxvf httpd-2.4.25.tar.gz 3、进入源码目录,开始安装 # cd httpd-2.4.25 # ./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 # make && make install 4、安装完之后,配置Apache,找到/usr/local/apache2/conf/httpd.cnf a、将文件中的 #ServerName www.example.com:80 改为 ServerName localhost:80,ServerRoot的路径改为"/usr/local/apache2",DocumentRoot的路径改为"/usr/local/apache2/htdocs"。 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、修改根目录权限
<Directory "/usr/local/apache2/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Require all granted
</Directory> d、配置欢迎页(首页)
<IfModule dir_module>
DirectoryIndex index.php index.html index.htm
</IfModule>
e、加载PHP模块和开启其他扩展
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
Addtype application/x-httpd-php .php .phtml f、配置启动脚本# cp /usr/local/src/httpd-2.4.25/build/rpm/httpd.init /etc/init.d/httpd
注意文件中有三处主要的地方需要修改下的: httpd=${HTTPD-/usr/local/apache2/bin/httpd} pidfile=${PIDFILE-/usr/local/apache2/logs/${prog}.pid} CONFFILE=/usr/local/apache2/conf/httpd.conf 请根据自己的实际情况更改相应的路径! g、设置Apache服务并启动 # chmod x /etc/init.d/httpd # chkconfig --add httpd # chkconfig httpd on # /etc/init.d/httpd start
# netstat -lnp |grep httpd
安装mysql相关依赖:
yum -y install gcc gcc-c gcc-g77 make cmake bison ncurses-devel autoconf automake zlib* fiex* libxml* libmcrypt* libtool-ltdl-devel* libaio libaio-devel bzr libtool ncurses5-devel imake libxml2-devel expat-devel 安装boost_1_59_0(必须是该版本): 1、获取源码:假如下载到/usr/local/src目录下,则进入目录cd /usr/local/src,然后获取源码软件包 wget https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz/download
2、解压: tar -xzvf boost_1_59_0.tar.gz
3、进入boost目录: cd boost_1_59_0
4、进行配置: ./bootstrap.sh
5、编译: ./b2
6、安装: ./b2 install 编译安装完成后,会把boost头文件拷贝到/usr/local/include/目录下,库文件在/usr/local/lib/下。 安装cmake(最新版本): 1、获取源码:依然下载到/usr/local/src目录下,cd /usr/local/src,获取软件包 wget https://cmake.org/files/v3.8/cmake-3.8.0.tar.gz
2、解压: tar -xzvf cmake-3.8.0.tar.gz
3、进入cmake目录: cd cmake-3.8.0
4、./bootstrap
5、gmake
6、gmake install
安装mysql5.7.18: 1、添加mysql用户和所属组: /usr/sbin/groupadd mysql /usr/sbin/useradd -g mysql mysql 2、创建mysql安装目录和数据目录 mkdir /usr/local/mysql mkdir /usr/local/mysql/data 3、修改mysql目录所有者 chown -R mysql:mysql /usr/local/mysql 4、获取mysql源码包:还在/usr/local/src目录下 wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.18.tar.gz 5、解压: tar -xzvf mysql-5.7.18.tar.gz 6、进入mysql目录: cd mysql-5.7.18 7、cmake编译配置:
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock
-DMYSQL_DATADIR=/usr/local/mysql/mydata
-DSYSCONFDIR=/etc
-DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
-DWITH_MYISAM_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_MEMORY_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DMYSQL_TCP_PORT=3306
-DENABLED_LOCAL_INFILE=1
-DWITH_PARTITION_STORAGE_ENGINE=1
-DWITH_SSL=yes
-DWITH_BOOST=/usr/local/src/boost_1_59_0
-DMYSQL_USER=mysql 8、编译安装: make && make install 9、到mysql的安装目录bin下,初始化数据库 cd /usr/local/mysql/bin ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data/ --basedir=/usr/local/mysql --socket=/usr/local/mysql/mysql.sock 运行后最后一句[note] 生成了一个mysql默认密码,复制到一个地方,保存下来。 10、添加mysql服务,拷贝mysql配置文件 回到mysql安装目录 cd .. 进入support-files目录 cd support-files 复制启动文件 cp -a mysql.server /etc/init.d/mysql //-a 可以把原来的属性一起复制过来 11、网上的资料显示还有my.cnf要编辑,但是我安装之后没有找到my.cnf文件。查了资料说是没有的话,运行系统默认配置,所以对my.cnf的配置这里就省略了。 12、启动mysql service mysql start 13、设置开机自启 chkconfig mysql on 14、登录mysql 到mysql安装目录的bin下 cd bin ./mysql -uroot -p Enter password: //输入之前保存的默认密码 15、修改root密码 SET PASSWORD = PASSWORD('mysql123'); 16、刷新mysql的系统权限相关表 flush privileges; 17、退出mysql: quit;
注意:安装mysql的时候出现一些问题,上面方法可能有些人安装步了,使用yum安装
wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
代码语言:javascript复制yum install mysql57-community-release-el6-7.noarch.rpm
代码语言:javascript复制yum install mysql-community-server
代码语言:javascript复制service mysqld start
代码语言:javascript复制mysql -uroot -p
其中遇到密码进不去,直接修改密码
MySQL修改root密码的多种方法
在 Navicat for MySQL 下面直接执行 SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass'); 就可以
方法1: 用SET PASSWORD命令
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
方法2:用mysqladmin
mysqladmin -u root password "newpass"
如果root已经设置过密码,采用如下方法
mysqladmin -u root password oldpass "newpass"
方法3: 用UPDATE直接编辑user表
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
在丢失root密码的时候,可以这样
mysqld_safe --skip-grant-tables&
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
mysql> FLUSH PRIVILEGES;
安装php5.6
代码语言:javascript复制# wget http://cn2.php.net/distributions/php-5.6.0.tar.xz
# xz -d php-5.6.0.tar.xz
# tar xf php-5.6.0.tar -C /usr/local/src/
下载 PHP 源码包
代码语言:javascript复制# wget http://cn2.php.net/distributions/php-5.6.0.tar.xz
# xz -d php-5.6.0.tar.xz
# tar xf php-5.6.0.tar -C /usr/local/src/
添加 epel 源
代码语言:javascript复制# rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
安装依赖
代码语言:javascript复制# yum install gcc bison bison-devel zlib-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libxml2-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel
注:如果你使用的 epel 7
的源,可能会没有 mcrypt mhash mhash-devel
几个包,在 http://dl.fedoraproject.org/pub/epel/6/x86_64/
中下载,使用 yum localinstall xxx.rpm
或 rpm -Uvh xxx.rpm
手动安装即可。
创建 www 用户
代码语言:javascript复制# groupadd www
# useradd -g www -s /sbin/nologin -M www
编译安装
代码语言:javascript复制# cd /usr/local/src/php-5.6.0/
# ./configure
--prefix=/usr/local/php56
--with-config-file-path=/usr/local/php56/etc
--enable-inline-optimization
--disable-debug
--disable-rpath
--enable-shared
--enable-opcache
--enable-fpm
--with-fpm-user=www
--with-fpm-group=www
--with-mysql=mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
--with-gettext
--enable-mbstring
--with-iconv
--with-mcrypt
--with-mhash
--with-openssl
--enable-bcmath
--enable-soap
--with-libxml-dir
--enable-pcntl
--enable-shmop
--enable-sysvmsg
--enable-sysvsem
--enable-sysvshm
--enable-sockets
--with-curl
--with-zlib
--enable-zip
--with-bz2
--with-readline
参数说明:
代码语言:javascript复制""" 安装路径 """
--prefix=/usr/local/php56
""" php.ini 配置文件路径 """
--with-config-file-path=/usr/local/php56/etc
""" 优化选项 """
--enable-inline-optimization
--disable-debug
--disable-rpath
--enable-shared
""" 启用 opcache,默认为 ZendOptimizer (ZendOpcache) """
--enable-opcache
""" FPM """
--enable-fpm
--with-fpm-user=www
--with-fpm-group=www
""" MySQL """
--with-mysql=mysqlnd
--with-mysqli=mysqlnd
--with-pdo-mysql=mysqlnd
""" 国际化与字符编码支持 """
--with-gettext
--enable-mbstring
--with-iconv
""" 加密扩展 """
--with-mcrypt
--with-mhash
--with-openssl
""" 数学扩展 """
--enable-bcmath
""" Web 服务,soap 依赖 libxml """
--enable-soap
--with-libxml-dir
""" 进程,信号及内存 """
--enable-pcntl
--enable-shmop
--enable-sysvmsg
--enable-sysvsem
--enable-sysvshm
""" socket & curl """
--enable-sockets
--with-curl
""" 压缩与归档 """
--with-zlib
--enable-zip
--with-bz2
""" GNU Readline 命令行快捷键绑定 """
--with-readline
如果你的 Web Server 使用的 Apache 请添加类似:--with-apxs2=/usr/local/apache-xx/bin/apxs
参数。
关于 mysqlnd
请查看 什么是 PHP 的 MySQL Native 驱动? 或查看 MySQL 官方介绍:MySQL native driver for PHP, 或 Installation on Unix。
PHP 5.6 內建了 phpdbg 交互式调试器,通过 --enable-phpdbg
开启,会在 PREFIX/bin
目录下产生一个 phpdbg 命令,感兴趣的可以试一下。
更多编译参数请使用 ./configure --help
查看。
# make -j8
# make install
如果想重新安装:
代码语言:javascript复制# make clean
# make clean all
# ./configure ...
# make -j8
# make install
配置 PHP
配置文件:
代码语言:javascript复制# cp php.ini-development /usr/local/php56/etc/php.ini
php-fpm 服务
代码语言:javascript复制# cp /usr/local/php56/etc/php-fpm.conf.default /usr/local/php56/etc/php-fpm.conf
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm56
# chmod x /etc/init.d/php-fpm56
启动 php-fpm
代码语言:javascript复制# service php-fpm56 start
Starting php-fpm done
php-fpm 可用参数 start|stop|force-quit|restart|reload|status
添加 PHP 命令到环境变量
编辑 ~/.bash_profile
,将:
PATH=$PATH:$HOME/bin
改为:
PATH=$PATH:$HOME/bin:/usr/local/php56/bin
使 PHP 环境变量生效:
代码语言:javascript复制# . ~/.bash_profile
查看看 PHP 版本
代码语言:javascript复制# php -v
PHP 5.6.0 (cli) (built: Sep 23 2014 03:44:18)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2014 Zend Technologies
这些自己亲手安装,参考了不同的资料,感谢网上这些资料,blog记录的朋友们