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. centos6.5编译安装lamp开发环境

    一.系统以及软件的准备 系统及编译安装包的下载地址:http://pan.baidu.com/s/1jIjqinc   密码:ghc2 说明:由于centos6.5是分卷压缩的,且压缩为三个压缩包,所 ...

  2. linux开机自动连接无线网络

           1.右击无线网络图标的“编辑连接”. 2.在“无线”选项卡里,选择“编辑”. 3.在“无线安全性”选项卡里,输入无线密匙,并选中左下角的“对所有用户可      用”的选项点击应用,会提 ...

  3. zookeeper 相关学习资料

    zookeeper的配置:http://www.cnblogs.com/yuyijq/p/3438829.html zookeeper运维:http://blog.csdn.net/hengyunab ...

  4. cloudera cdh native lib

    如果通过命令行的方式安装cloudera 版本的hadoop,下载它的cdh版本. 解压后执行,你会发现报warning,没有native的库,lib/native是空的. 如何获取native的文件 ...

  5. nodejs模块——Event模块

    Node.js中,很多对象会发出事件.如,fs.readStream打开文件时会发出一个事件. 所有发出事件的对象都是events.EventEmitter的实例,可以通过require(" ...

  6. 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇

    始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...

  7. 在表单中元素的onchange事件的兼容性问题

    onchange:在值发生改变的时候触发 text:当光标离开的时候如果内容有变化就触发 radio/check:标准浏览器下点击的时候只要值变了就触发 非标准浏览器下焦点离开的时候如果值变了就触发

  8. js对象定义

    JS中的对象定义方式,跟服务端,还是有很大差别的! 现在来说一下JS类的定义 工厂模式 function creatHeven(name,age){ var temp =new Object(); t ...

  9. PAT 1019. 数字黑洞 (20)

    给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字.一直重复这样做,我们很快会停在有"数字黑洞&qu ...

  10. PL/SQL流程控制语句

    PL/SQL流程控制语句介绍PL/SQL的流程控制语句, 包括如下三类:控制语句: IF 语句循环语句: LOOP语句, EXIT语句顺序语句: GOTO语句, NULL语句①if语句 IF < ...