linux下PHP7环境搭建
LAMP环境版本
- 操作系统:Centos 7
- Mysql:5.7.11
- Apache:2.4.18
- PHP:7.0.4
安装Mysql
为mysql创建专属帐号
- shell> groupadd mysql
- shell> useradd -r -g mysql -s /bin/false mysql
源码编译安装
- shell> tar zxvf mysql-5.7.11.tar.gz
- shell> cd mysql-5.7.11
- shell> cmake .
- shell> make
- shell> make install
安装后设置
- shell> cd /usr/local/mysql
- shell> chown -R mysql . #修改目录所有者为mysql
- shell> chgrp -R mysql . #修改目录所属组为mysql
- shell> bin/mysqld --initialize-insecure --user=mysql --datadir=/data/mysql #初始化mysql,初始化为空,数据库存放目录指定为/data/mysql
- shell> bin/mysql_ssl_rsa_setup #启动ssl加密方式连接
- shell> chown -R root . #修改目录所有者为root
- shell> chown -R mysql /data/mysql #修改数据库目录所有者为mysql
安装mysql服务
- shell> cp support-files/mysql.server /etc/init.d/mysql.server
- shell> service mysql start #启动服务
安装Apache
源码编译安装
- shell> ./configure --prefix=/usr/local/apahche \
- --enable-so #动态共享对象,可实现模块动态生效 \
- --enable-rewrite #启用Rewrite功能 \
- --enable-ssl #支持SSL/TLS,可以实现https访问 \
- --enable-deflate #支持压缩 \
- shell> make
- shell> make install
apache的启动与关闭
- shell> /usr/local/apache/bin/apachectl start #启动
- shell> /usr/local/apache/bin/apachectl stop #停止
- shell> /usr/local/apache/bin/apachectl restart #重启
将apache添加到Linux的服务并设置自启动
- shell> cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd #设置为系统服务
- shell> ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S80httpd #在启动级别3中自启动
- shell> service httpd restart #通过服务来重启apache
运行测试页面
常见问题
- configure: error: APR not found.
解决方法: 安装对应依赖库
- shell> yum install apr apr-util-devel
- configure: error: pcre-config for libpcre not found.
解决方法:安装对应依赖库
- yum install pcre pcre-devel
- 启动apache时报:AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 10.44.13.173. Set the 'ServerName' directive globally to suppress this message
解决方法:修改配置文件httpd.conf设置ServerName localhost:80
安装PHP
安装依赖库
- zlib
- shell> tar xf zlib.1.2.8.tar.gz
- shell> cd zlib.1.2.8
- shell> ./configure
- shell> make test
- shell> make install
- GD库
libpng
- shell> tar xf libpng-1.6.21
- shell> cd libpng-1.6.21
- shell> ./configure --prefix=/usr/local/libpng
- shell> make
- shell> make check
- shell> make install
jpeg
- shell> tar xf jpegsrc.v9.tar.gz
- shell> cd jpeg-9
- shell> ./configure --prefix=/usr/local/libjpeg
- shell> make
- shell> make install
- libcurl-devel
- yum install libcurl-devel
- openssl-devel
- yum install openssl-devel
- libxslt-devel
- yum install libxslt-devel
- libxml2-devel
- yum install libxml2-devel
- freetype 字体操作库
- shell> tar xf freetype-2.6.3.tar.bz2
- shell> sh autogen.sh
- shell> ./configure --prefix=/usr/local/freetype
- shell> make
- shell> make install
编译安装PHP
- ./configure --prefix=/usr/local/php \
- --with-apxs2=/usr/local/apache/bin/apxs \
- --with-curl \
- --with-freetype-dir=/usr/local/freetype \
- --with-gd \
- --with-gettext \
- --with-iconv-dir \
- --with-mysqli \
- --with-openssl \
- --with-pcre-regex \
- --with-pdo-mysql \
- --with-pdo-sqlite \
- --with-pear \
- --with-png-dir=/usr/local/libpng \
- --with-jpeg-dir=/usr/local/libjpeg \
- --with-xsl \
- --with-zlib \
- --enable-fpm \
- --enable-bcmath \
- --enable-libxml \
- --enable-inline-optimization \
- --enable-gd-native-ttf \
- --enable-mbregex \
- --enable-mbstring \
- --enable-opcache \
- --enable-pcntl \
- --enable-shmop \
- --enable-soap \
- --enable-sockets \
- --enable-sysvsem \
- --enable-xml \
- --enable-zip
- shell> make
- shell> make install
PHP安装成功后会在apache的modules目录下生成一个libphp.so动态库文件,在apache的配置文件httpd.conf里自动增加一行
- LoadModule php7_module modules/libphp7.so
在Apache的配置文件httpd.conf的<IfModule mime_module></IfModule>块里增加一行
- AddType application/x-httpd-php .php
在网站要目录/usr/local/htdocs里增加一个index.php测试文件内容如下:
- <?php
- phpinfo();
然后我们运行此文件,如果输出了phpinfo信息,证明我们安装成功。
linux下PHP7环境搭建的更多相关文章
- linux下LAMP环境搭建
++++++++++++++++++++++++++++++++++++++++++++++ linux下LAMP环境搭建 ++++++++++++++++++++++++++++++++++++++ ...
- 2017.7.18 linux下ELK环境搭建
参考来自:Linux日志分析ELK环境搭建 另一篇博文:2017.7.18 windows下ELK环境搭建 0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1 ...
- Linux 下LNMP环境搭建_【all】
LNMP = Linux + Nginx + Mysql + PHP 1.0 Linux环境搭建 Linux 系统安装[Redhat] 1.1. FastCGI介绍 1.什么是CGI(common g ...
- linux下LAMP环境搭建尝试
最近,学习搭建了LAMP服务环境,中间遇到了很多问题,经过不断摸索总算得以解决.为了大家少走弯路,现将相关经验进行总结. linux下软件安装分为自动安装和手动安装两种,自动安装借助工具如yum等,自 ...
- linux下PHP 环境搭建
linux下环境搭建 第一步 安装Apache2 sudo apt-get install apache2 第二步 安装PHP模块 sudo apt-get install php5 第三 ...
- linux下scrapy环境搭建
最近使用scrapy做数据挖掘,使用scrapy定时抓取数据并存入MongoDB,本文记录环境搭建过程以作备忘 OS:ubuntu 14.04 python:2.7.6 scrapy:1.0.5 D ...
- Linux 下LAMP环境搭建_【all】
LAMP = Linux + Apache + Mysql + PHP 0. Linux环境搭建 Linux 系统安装[Redhat] 1.http服务软件分类及企业实战用途介绍 静态程序: Apac ...
- Zedboard学习(二):zedboard的Linux下交叉编译环境搭建 标签: 交叉编译linuxzedboard 2017-07-04 23:49 19人阅读
环境准备 首先肯定是要下载xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin文件,这是官方提供的linux下交叉编译链安装文件,下载地址为:https://p ...
- Linux下-LNMP环境搭建博客网站(全过程)
通常我们所说的LNMP是指一个网站基本的组织框架,即Linux系统支持,Nginx静态服务,Mysql数据库支持以及PHP动态编程语言支持.目前Mysql数据库被Oracle数据库分析公司收购,其创始 ...
随机推荐
- emacs 新手笔记(二) —— 分割窗格 (split window)
初极狭,才通人.复行数十步,豁然开朗.—— 陶渊明·桃花源记 ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 使用 split-window-xxx 函数可 ...
- 关于TP3.2微信开发那点事(基础篇)
许久没有为博客更新内容,今天我将过去一周做的微信服务号的相关心得体会在此分享,具体如何申请成为服务号的相关流程文档都有,可根据要求完成: 开发第一步:开发前配置: AppID-->微信号的&qu ...
- The Google Test and Development Environment (持续更新)
最近Google Testing Blog上开始连载The Google Test and Development Environment(Google的测试和开发环境),因为blogspot被墙,我 ...
- UART Explained(转载)
做嵌入式开发,UART几乎是必不可少的,调试串口.GPS.GPRS.Bluetooth等模块很多都是用的UART接口.时下火热的IoT也不乏UART的身影,串口的BLE.WIFI.Zigbee.Lor ...
- HTML标签----图文详解
国庆节快乐,还在加班的童鞋,良辰必有重谢! 本文主要内容 头标签 排版标签:<p> <br> <hr> <center> ...
- Spring AOP 5种通知与java动态代理
接口,要求为每个方法前后添加日志 @Component("arithmeticCalculator") public class ArithmeticCalculatorImpl ...
- Hibernate中saveOrUpdate()和merge()的区别
this.getSession().merge(obj); this.getSession().saveOrUpdate(obj); saveOrUpdate(): saveOrUpdate()基本上 ...
- css3动画的两种方式transition和@keyframs
- GNU Trove trove4j
GNU Trove (http://trove4j.sourceforge.net/) 是一个Java 集合类库.在某些场景下,Trove集合类库提供了更好的性能,而且内存使用更少.以下是Trove中 ...
- 在C#中将String转换成Enum:
一: 在C#中将String转换成Enum: object Enum.Parse(System.Type enumType, string value, bool ignoreCase); 所以,我 ...