centOS6.6 编译安装lnmp(PHP 7.0.9+Nginx1.9.9+MySQL5.7.15)
一、系统约定
源代码位置:/usr/local/src
安装位置:/usr/local/软件名字
二、软件下载
(所需软件几乎可以全部从搜狐镜像站http://mirrors.sohu.com/下载,速度快)
1、下载nginx(目前稳定版)
[root@bogon src]# wget http://nginx.org/download/nginx-1.9.9.tar.gz
2、下载pcre (支持nginx伪静态)
[xuj@bogon ~]$ wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
3、下载MySQL
[root@bogon src]# wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.15.tar.gz
http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.14.tar.gz
4、下载php
[root@bogon src]# wget http://mirrors.sohu.com/php/php-7.0.9.tar.gz
5、下载cmake(MySQL编译工具)
[root@bogon src]# wget https://cmake.org/files/v3.6/cmake-3.6.2.tar.gz
6、下载libmcrypt(PHPlibmcrypt模块)
http://nchc.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz
7、下载GD库安装包
[root@bogon src]# wget https://bitbucket.org/libgd/gd-libgd/downloads/libgd-2.1.1.tar.gz
或http://download.csdn.net/download/xujunabc999/9629853 下载完用winscp软件上传
三、安装过程
- 安装cmake
cd /usr/local/src
tar zxvf cmake-2.8.8.tar.gz
cd cmake-2.8.8
./configure
make #编译
make install #安装 - 安装mysql
如果已经安装mysql,安装前请先卸载干净
MySQL卸载教程 http://blog.csdn.net/xujunabc999/article/details/52592808
mysql安装教程 http://blog.csdn.net/xujunabc999/article/details/52588159 - 查看是否安装过pcre
卸载 yum remove pcre
[root@bogon xuj]# yum remove pcre-devel-7.8-7.el6.i686
yum remove pcre-7.8-7.el6.i686
cd /usr/local/src
mkdir /usr/local/pcre #创建安装目录
tar zxvf pcre-8.39.tar.gz
cd pcre-8.39
./configure –prefix=/usr/local/pcre #配置
make
make install - 安装 nginx
cd /usr/local/src
groupadd www #添加www组
useradd -g www www -s /bin/false #创建nginx运行账户www并加入到www组,不允许www用户直接登录系统
tar zxvf nginx-1.2.3.tar.gz
cd nginx-1.2.3
./configure –prefix=/usr/local/nginx –without-http_memcached_module –user=www –group=www –with-http_stub_status_module –with-openssl=/usr/ –with-pcre=/usr/local/src/pcre-8.39
注意:–with-pcre=/usr/local/src/pcre-8.39指向的是源码包解压的路径,而不是安装的路径,否则会报错
make
make install
/usr/local/nginx/sbin/nginx #启动nginx
设置nginx开启启动
vi /etc/rc.d/init.d/nginx #编辑启动文件,下载并拷贝http://download.csdn.net/detail/xujunabc999/9634045内容
:wq! #保存退出
chmod 775 /etc/rc.d/init.d/nginx #赋予文件执行权限
chkconfig nginx on #设置开机启动
/etc/rc.d/init.d/nginx restart
service nginx restart - 安装libmcrypt
cd /usr/local/src
tar zxvf libmcrypt-2.5.8.tar.gz #解压
cd libmcrypt-2.5.8 #进入目录
./configure #配置
make #编译
make install #安装 - 安装gd
cd /usr/local/src
tar zxvf libgd-2.1.1.tar.gz #解压
cd libgd-2.1.1 #进入目录
yum install libpng libpng-devel libjpeg-turbo libjpeg-turbo-devel freetype freetype-devel gd
[root@bogon libgd-2.1.1]# ./configure –enable-m4_pattern_allow –prefix=/usr/local/gd –with-jpeg=/usr/lib –with-png=/usr/local –with-xpm=/usr/lib –with-freetype=/usr/local –with-fontconfig=/usr/include/fontconfig #配置
libpng ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng16/libpng-1.6.25.tar.gz
libjpeg https://sourceforge.net/projects/libjpeg/files/libjpeg/6b/jpegsrc.v6b.tar.gz
freetype http://download.savannah.gnu.org/releases/freetype/freetype-2.7.tar.gz
fontconfig https://www.freedesktop.org/software/fontconfig/release/fontconfig-2.12.1.tar.gz
make #编译
make install #安装 - cd /usr/local/src
tar -zvxf php-7.0.9.tar.gz
cd php-7.0.9
mkdir -p /usr/local/php7 #建立php安装目录
./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-gd=/usr/local/gd --with-png-dir=/usr/lib --with-jpeg-dir=/usr/lib --with-freetype-dir=/usr/lib --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --enable-ctype
可以通过./configure -help查看支持的扩展,目前PHP7的configure的参数没有–with-mysql参数,只支持–with-mysqli和–with-pdo-mysql
安装缺少的组件(若没有提示缺少组件,请忽略),如:
yum install libxml2
yum install libxml2* -y
yum install openssl-dev
yum install libcurl3-openssl-dev
yum install openssl-devel.i686
yum install openssl-perl.i686
yum install libcurl-devel.i686
yum install libjpeg-turbo-devel.i686
yum install libpng.i686
yum install libpng-devel.i686
yum install freetype-devel
yum install php-gd
make #编译
make install #安装
cp php.ini-production /usr/local/php7/etc/php.ini #复制php配置文件到安装目录
rm -rf /etc/php.ini #删除系统自带配置文件
ln -s /usr/local/php7/etc/php.ini /etc/php.ini #添加软链接
cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf #拷贝模板文件为php-fpm配置文件
vi /usr/local/php7/etc/php-fpm.conf #编辑
user = www #设置php-fpm运行账号为www
group = www #设置php-fpm运行组为www
pid = run/php-fpm.pid #取消前面的分号
设置 php-fpm开机启动
cp /usr/local/src/php-7.0.9/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录
chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限
chkconfig php-fpm on #设置开机启动
vi /usr/local/php7/etc/php.ini #编辑配置文件
找到:disable_functions =
修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid, posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname
列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
找到:;date.timezone =
修改为:date.timezone = PRC #设置时区
找到:expose_php = On
修改为:expose_php = OFF #禁止显示php版本的信息
找到:short_open_tag = Off
修改为:short_open_tag = ON #支持php短标签
8.配置nginx支持php
vi /usr/local/nginx/conf/nginx.conf
修改/usr/local/nginx/conf/nginx.conf 配置文件,需做如下修改
user www www; #首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php7/etc/php-fpm.conf中的user,group配置相同,否则php运行出错
index index.php index.html index.htm; #添加index.php
pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
/etc/init.d/nginx restart #重启nginx
- 安装过程可能的错误
9.1 出错:CMake Error at cmake/boost.cmake:81 (MESSAGE):
下载 http://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
,放到/usr/local/boost目录下,然后在cmake后面加选项-DWITH_BOOST=/usr/local/boost
[root@bogon mysql-5.7.15]#cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DMYSQL_USER=mysql -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost
9.2 出错:Curses library not found. Please install appropriate package
– Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
CMake Error at cmake/readline.cmake:83 (MESSAGE):
Curses library not found. Please install appropriate package,
remove CMakeCache.txt and rerun cmake.On Debian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it is ncurses-devel.
Call Stack (most recent call first):
cmake/readline.cmake:118 (FIND_CURSES)
cmake/readline.cmake:214 (MYSQL_USE_BUNDLED_READLINE)
CMakeLists.txt:257 (MYSQL_CHECK_READLINE)
– Configuring incomplete, errors occurred!
解决办法:
[root@bogon mysql-5.7.15]# rm -f CMakeCache.txt
yum -y install ncurses-devel
然后再使用cmake编译就可以了.
9.3 ERROR:. No pool defined at least one pool section must be specified in config file
ERROR: failed to post process the configuration
ERROR: FPM initialization failed
solution:
在/usr/local/php7/etc/php-fpm.d目录下
cp www.conf.default www.conf
参考:
http://www.osyunwei.com/archives/5235.html
http://blog.csdn.net/u014595668/article/details/50188127
centOS6.6 编译安装lnmp(PHP 7.0.9+Nginx1.9.9+MySQL5.7.15)相关推荐
- CentOS6.9编译安装LNMP环境
CentOS6.9编译安装LNMP环境 今天尝试一下用编译的方式来搭建lnmp运行环境.所有软件都采用当前最新版本,除了CentOS.这是由于目前企业大多数应该都还在使用CentOS6的缘故,并且Ce ...
- CentOS6.8 编译安装LNMP
思路:根据Linux系统以及公司网站系统的信息,选择合适的安装包进行安装 一.查看系统信息 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # ...
- Centos6.8编译安装LNMP环境
所需软件包: 1.下载nginx http://nginx.org/download/nginx-1.6.2.tar.gz 2.下载MySQL http://cdn.mysql.com/archive ...
- centos6.6编译安装lnmp系列之nginx
简介: 环境:虚拟机+centos6.6 Cmake下载地址:http://www.cmake.org/files/v3.0/cmake-3.0.2.tar.gz Nginx 下载地址: http:/ ...
- centos6.8 编译安装lnmp php7.2 mysql5.6 nginx1.1.4
编译操作参考版,没有每一步详细操作,慎入 关闭selinux和防火墙 service iptables stop chkconfig iptables off vi /etc/selinux/conf ...
- CentOS6下编译安装zabbix_agent3.0客户端
zabbix3.0.5 Server端请移步至http://ljohn.blog.51cto.com/11932290/1869257 安装Zabbix3.0.5客户端 添加一台CentOS6.5 主 ...
- CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28
2019独角兽企业重金招聘Python工程师标准>>> [准备工作] 01 #在编译安装lnmp之前,首先先卸载已存在的rpm包. 02 rpm -e httpd 03 rpm -e ...
- CentOS 7.6编译安装LNMP
一.前期准备 1.服务器以最小化方式安装CentOS 7.6 2.配置本地源及安装epel源 #cd /etc/yum.repos.d #vi CentOS-Base.repo 增加enable=1 ...
- CentOS6.9编译安装Sphinx并使用php7的sphinx扩展实现全文搜索
本篇笔记记录了CentOS6.9编译安装Sphinx,编译安装php-sphinx扩展,并使用php7的sphinx扩展实现全文搜索的过程 nginx+mysql+php安装请参考以下笔记: Cent ...
最新文章
- c语言usb串口输出,C语言实现模拟USB对8bit数据的NRZI编码输出
- 庖丁解牛迭代器,聊聊那些藏在幕后的秘密
- 论坛报名 | 寻找机器感知的最新突破
- Shiro-授权(RBAC)
- python打开另一个程序_python 新手问题啊,为什么我运行一个python程序,另一个就会自动退出呢?始终只能运行一个...
- linux终端安装playonlinux,Ubuntu怎么安装PlayOnLinux
- M斐波那契数列(HDU-4549)
- 中国石油大学《机械基础(设计与制造)》第二阶段在线作业
- 矩阵和向量的求导法则
- 基于深度学习的视频质量分析 深度学习视频质量诊断 图像质量诊断
- JDK1.8的Lambda表达式使用(一)
- matlab 化学方程式配平
- win10电脑任务栏右侧小图标消失解决方法
- matlab 电路频率响应_频率响应法与matlab指令计算
- 形容人的内核是什么意思_cpu核数是什么意思
- 智能家居为什么跑不出“独角兽”?
- 陈莉君: Linux内核的那些书
- html制作多媒体课件,多媒体课件设计与制作 教师课件制作平台
- STM32 USART串口发送软件调试
- Command “python setup.py egg_info“ failed with error code 1 in /tmp/pip-build-5z0k7aoz/pynacl/
热门文章
- JAVA反序列化漏洞原理分析
- padding在css中是什么意思,html里padding是什么意思
- 谷歌浏览器登录不了账号_苹果账号也要开发“一键登录”,位置还要在谷歌和脸书上面?...
- Pandas+Pyecharts | 20000+天猫订单数据可视化
- SolidWorks 操作视频 | 流体分析结果演示
- 【无脑速通设计模式】设计模式简介 | 七大原则 | 模式分类
- C# Excel出力及样式的设定
- 7z 头部错误 数据错误_简单的方法来修复损坏的7Zip的文件
- 将数字日期转换成汉字大写日期
- 基于JAVA的电子通讯录+源码+毕业设计+课程设计