LAMP环境版本

  • 操作系统:Centos 7
  • Mysql:5.7.11
  • Apache:2.4.18
  • PHP:7.0.4
 
 

安装Mysql

 
 
 

为mysql创建专属帐号

  1. shell> groupadd mysql
  2. shell> useradd -r -g mysql -s /bin/false mysql
 

源码编译安装

  1. shell> tar zxvf mysql-5.7.11.tar.gz
  2. shell> cd mysql-5.7.11
  3. shell> cmake .
  4. shell> make
  5. shell> make install

安装后设置

注意:从Mysql5.7开始,mysql默认安装后不再是空密码,而是生成一个随机密码,除非初始化时指定--initialize-insecure。
所有用户拥有对于MySQL默认安装test数据库的访问权限(即使没有授予权限)为了安全考虑5.7版本中不在有test数据库。
更为重要的是,MySQL 5.7版本提供了更为简单SSL安全访问配置,并且默认连接就采用SSL的加密方式
 
  1. shell> cd /usr/local/mysql
  2. shell> chown -R mysql .  #修改目录所有者为mysql
  3. shell> chgrp -R mysql .  #修改目录所属组为mysql
  4. shell> bin/mysqld --initialize-insecure --user=mysql --datadir=/data/mysql  #初始化mysql,初始化为空,数据库存放目录指定为/data/mysql
  5. shell> bin/mysql_ssl_rsa_setup #启动ssl加密方式连接
  6. shell> chown -R root .   #修改目录所有者为root
  7. shell> chown -R mysql /data/mysql  #修改数据库目录所有者为mysql

安装mysql服务

只需要将mysql安装目录下的mysql.server复制过去就OK了。
  1. shell> cp support-files/mysql.server /etc/init.d/mysql.server
  2. shell> service mysql start   #启动服务

安装Apache

 
 
 

源码编译安装

 
  1. shell> ./configure --prefix=/usr/local/apahche \
  2. --enable-so #动态共享对象,可实现模块动态生效 \
  3. --enable-rewrite #启用Rewrite功能 \
  4. --enable-ssl #支持SSL/TLS,可以实现https访问 \
  5. --enable-deflate #支持压缩 \
  6. shell> make
  7. shell> make install

apache的启动与关闭

 
  1. shell> /usr/local/apache/bin/apachectl start    #启动
  2. shell> /usr/local/apache/bin/apachectl stop     #停止
  3. shell> /usr/local/apache/bin/apachectl restart  #重启

将apache添加到Linux的服务并设置自启动

 
  1. shell> cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd   #设置为系统服务
  2. shell> ln -s /etc/rc.d/init.d/httpd /etc/rc.d/rc3.d/S80httpd   #在启动级别3中自启动
  3. shell> service httpd restart   #通过服务来重启apache
 

运行测试页面

 
在客户端浏览器上输入服务器的IP地址,看是否能正常打开网页。
 
 
 

常见问题

  • configure: error: APR not found.

    解决方法: 安装对应依赖库
    1. shell> yum install apr apr-util-devel
  • configure: error: pcre-config for libpcre not found.
    解决方法:安装对应依赖库

    1. 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
     
    1. shell> tar xf zlib.1.2.8.tar.gz
    2. shell> cd zlib.1.2.8
    3. shell> ./configure
    4. shell> make test
    5. shell> make install
  • GD库
     
    libpng
    1. shell> tar xf libpng-1.6.21
    2. shell> cd libpng-1.6.21
    3. shell> ./configure --prefix=/usr/local/libpng
    4. shell> make
    5. shell> make check
    6. shell> make install

    jpeg

    1. shell> tar xf jpegsrc.v9.tar.gz
    2. shell> cd jpeg-9
    3. shell> ./configure --prefix=/usr/local/libjpeg
    4. shell> make
    5. shell> make install
  • libcurl-devel
    1. yum install libcurl-devel
  • openssl-devel
    1. yum install openssl-devel
  • libxslt-devel
    1. yum install libxslt-devel
  • libxml2-devel
    1. yum install libxml2-devel
  • freetype 字体操作库
    1. shell> tar xf freetype-2.6.3.tar.bz2
    2. shell> sh autogen.sh
    3. shell> ./configure --prefix=/usr/local/freetype
    4. shell> make
    5. shell> make install

编译安装PHP

  1. ./configure --prefix=/usr/local/php \
  2. --with-apxs2=/usr/local/apache/bin/apxs \
  3. --with-curl \
  4. --with-freetype-dir=/usr/local/freetype \
  5. --with-gd \
  6. --with-gettext \
  7. --with-iconv-dir \
  8. --with-mysqli \
  9. --with-openssl \
  10. --with-pcre-regex \
  11. --with-pdo-mysql \
  12. --with-pdo-sqlite \
  13. --with-pear \
  14. --with-png-dir=/usr/local/libpng \
  15. --with-jpeg-dir=/usr/local/libjpeg \
  16. --with-xsl \
  17. --with-zlib \
  18. --enable-fpm \
  19. --enable-bcmath \
  20. --enable-libxml \
  21. --enable-inline-optimization \
  22. --enable-gd-native-ttf \
  23. --enable-mbregex \
  24. --enable-mbstring \
  25. --enable-opcache \
  26. --enable-pcntl \
  27. --enable-shmop \
  28. --enable-soap \
  29. --enable-sockets \
  30. --enable-sysvsem \
  31. --enable-xml \
  32. --enable-zip
  33. shell> make
  34. shell> make install
 
Apache与PHP的关联

PHP安装成功后会在apache的modules目录下生成一个libphp.so动态库文件,在apache的配置文件httpd.conf里自动增加一行

  1. LoadModule php7_module        modules/libphp7.so
 

在Apache的配置文件httpd.conf的<IfModule mime_module></IfModule>块里增加一行

  1. AddType application/x-httpd-php .php

在网站要目录/usr/local/htdocs里增加一个index.php测试文件内容如下:

  1. <?php
  2. phpinfo();

然后我们运行此文件,如果输出了phpinfo信息,证明我们安装成功。

linux下PHP7环境搭建的更多相关文章

  1. linux下LAMP环境搭建

    ++++++++++++++++++++++++++++++++++++++++++++++ linux下LAMP环境搭建 ++++++++++++++++++++++++++++++++++++++ ...

  2. 2017.7.18 linux下ELK环境搭建

    参考来自:Linux日志分析ELK环境搭建  另一篇博文:2017.7.18 windows下ELK环境搭建   0 版本说明 因为ELK从5.0开始只支持jdk 1.8,但是项目中使用的是JDK 1 ...

  3. Linux 下LNMP环境搭建_【all】

    LNMP = Linux + Nginx + Mysql + PHP 1.0 Linux环境搭建 Linux 系统安装[Redhat] 1.1. FastCGI介绍 1.什么是CGI(common g ...

  4. linux下LAMP环境搭建尝试

    最近,学习搭建了LAMP服务环境,中间遇到了很多问题,经过不断摸索总算得以解决.为了大家少走弯路,现将相关经验进行总结. linux下软件安装分为自动安装和手动安装两种,自动安装借助工具如yum等,自 ...

  5. linux下PHP 环境搭建

    linux下环境搭建   第一步 安装Apache2 sudo apt-get install apache2   第二步 安装PHP模块 sudo apt-get install php5   第三 ...

  6. linux下scrapy环境搭建

    最近使用scrapy做数据挖掘,使用scrapy定时抓取数据并存入MongoDB,本文记录环境搭建过程以作备忘 OS:ubuntu 14.04  python:2.7.6 scrapy:1.0.5 D ...

  7. Linux 下LAMP环境搭建_【all】

    LAMP = Linux + Apache + Mysql + PHP 0. Linux环境搭建 Linux 系统安装[Redhat] 1.http服务软件分类及企业实战用途介绍 静态程序: Apac ...

  8. Zedboard学习(二):zedboard的Linux下交叉编译环境搭建 标签: 交叉编译linuxzedboard 2017-07-04 23:49 19人阅读

    环境准备 首先肯定是要下载xilinx-2011.09-50-arm-xilinx-linux-gnueabi.bin文件,这是官方提供的linux下交叉编译链安装文件,下载地址为:https://p ...

  9. Linux下-LNMP环境搭建博客网站(全过程)

    通常我们所说的LNMP是指一个网站基本的组织框架,即Linux系统支持,Nginx静态服务,Mysql数据库支持以及PHP动态编程语言支持.目前Mysql数据库被Oracle数据库分析公司收购,其创始 ...

随机推荐

  1. Nova 操作汇总(限 libvirt 虚机) [Nova Operations Summary]

    本文梳理一下 Nova 主要操作的流程. 0. Nova REST-CLI-Horizon 操作对照表 Nova 基本的 CRUD 操作和 extensions: # 类别 Nova V2 REST ...

  2. 【原】一张图片优化5K的带宽成本

    上周,我参加了公司的一门课程<网站性能优化>,讲师提出了一个问题:一张图片优化后减少5K,1年内可以大概省下多少宽带成本呢?非常好奇,仔细听完讲师分析,计算出来的数据让小伙伴们都惊呆了,仅 ...

  3. 关于AngularJs中的路由学习总结

    AngularJs中的路由,应用比较广泛,主要是允许我们通过不同的url访问不同的内容,可实现多视图的单页web应用.下面看看具体怎么使用. 关于路由  通常我们的URL形式为http://jtjds ...

  4. ComboBox的联动

    窗体搭建: 实现功能: 加载年级下拉框 选中年级时加载出科目下拉框 加载年级下拉框: 第一步,在DAL层中写一个方法,检索所有的年级名称集合,返回的是泛型集合List<> public L ...

  5. DataConvertJson

    public class DataConvertJson { #region dataTable转换成Json格式 /// <summary> /// dataTable转换成Json格式 ...

  6. html5游戏-包围盒检测算法

    矩形包围盒算法:检测2个矩形是否重叠,在这样情况下要判断2个矩形是否碰撞只需要比较两个矩形顶点的坐标即可.假设矩形A用(x1,y1)表示左上角,(x2,y2)表示右下角,矩形B用(x3,y3)表示左上 ...

  7. linux svn

    1.回滚 一直在找svn回滚的方法,这个还是很实用的,屡试不爽阿 经常由于坑爹的需求,功能要切回到之前的某一个版本.有两种方法可以实现: 方法1: 用svn merge  1) 先 svn up,保证 ...

  8. 独立成分分析(ICA)在fMRI数据处理时timecourse的理解

    来源: http://blog.sciencenet.cn/blog-479412-434990.html   在处理fMRI数据时,使用空间ICA的方法.将一个四维的fMRI数据分解为空间patte ...

  9. 01Spring_基本jia包的导入andSpring的整体架构and怎么加入日志功能

    1.什么是Spring : v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:u ...

  10. css position, display, float 内联元素、块级元素

    position属性:position属性指出一个元素的定位方法.有4种可能值:static, relative, absolute or fixed: static:默认值,元素按照在文档流中出现的 ...