Linux搭建tengine2.0<Nginx>+php7环境

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 本文介绍了在Linux系统上搭建Tengine 2.0(一个Nginx的增强版本)和PHP 7环境的详细步骤,包括创建安装目录、下载源码包及依赖库、编译安装Nginx、配置Nginx、安装PHP及其依赖、设置PHP-FPM、配置环境变量、安装Git和Composer,以及服务管理和日志查看等。
Linux部署Nginx+Php环境
1、先创建nginx安装目录:
[root@CENTOS7-128 / ]#  mkdir -p /usr/local/nginx
2、下载二进制源码包及依赖库:
[root@CENTOS7-128 / ]#  cd /usr/local/src/nginx
[root@CENTOS7-128 nginx ]# wget http://tengine.taobao.org/download/tengine-2.2.0.tar.gz
[root@CENTOS7-128 nginx ]# wget https://sourceforge.net/projects/pcre/files/pcre/8.40/pcre-8.40.tar.gz
[root@CENTOS7-128 nginx ]# wget http://zlib.net/zlib-1.2.11.tar.gz  or http://prdownloads.sourceforge.net/libpng/zlib-1.2.11.tar.gz
[root@CENTOS7-128 nginx ]# wget http://artfiles.org/openssl.org/source/openssl-1.1.0e.tar.gz
3、解压下载的源码包:
[root@CENTOS7-128 nginx  ]# tar xvf tengine-2.2.0.tar.gz
[root@CENTOS7-128 nginx  ]# tar xvf pcre-8.40.tar.gz
[root@CENTOS7-128 nginx  ]# tar xvf zlib-1.2.11.tar.gz
[root@CENTOS7-128 nginx  ]# tar xvf openssl-1.1.0e.tar.gz
4、安装:先configure再make编译
[root@CENTOS7-128 nginx  ]# cd tengine-2.2.0
[root@CENTOS7-128 tengine-2.2.0 ]#./configure --prefix=/data/nginx  --with-openssl=/usr/local/src/nginx/openssl-1.1.0e/  --with-zlib=/usr/local/src/nginx/zlib-1.2.11 --with-pcre=/usr/local/src/nginx/pcre-8.40
[root@CENTOS7-128 tengine-2.2.0 ]# make && make install
5、截止以上安装活动,不会报任何错误
6、进入nginx安装目录启动服务:
[root@CENTOS7-128 /]# cd /data/nginx/sbin/
[root@CENTOS7-128 sbin]# ./nginx
7、进入nginx/conf配置目录修改nginx.conf
[root@CENTOS7-128 conf]# vi nginx.conf
[root@CENTOS7-128 conf]# cd ../sbin/
[root@CENTOS7-128 sbin]# ./nginx -t
the configuration file /data/nginx/conf/nginx.conf syntax is ok
configuration file /data/nginx/conf/nginx.conf test is successful
[root@CENTOS7-128 sbin]# ./nginx -s reload
8、修改访问域名,不适用ip,默认端口:
    server {
        listen       80;
        server_name  101.116.115.128;
        server_name  www.fullysss.com;
# tips:修改完成,本地hosts映射域名:101.116.115.128   www.fullysss.com
9、安装php:
# 安装所需要的依赖库:yum install -y gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libpng libpng-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses curl openssl-devel gdbm-devel db4-devel libXpm-devel libX11-devel gd-devel gmp-devel readline-devel libxslt-devel expat-devel xmlrpc-c xmlrpc-c-devel file 
# 下载php安装:
[root@CENTOS7-128 / ]# cd opt
[root@CENTOS7-128 opt ]# rz 把下载的php-7.1.5.tar.g包放在这个目录并解压“
[root@CENTOS7-128 opt ]# tar -zxvf php-7.1.5.tar.gz
[root@CENTOS7-128 opt ]# cd php-7.1.5
[root@CENTOS7-128  php-7.1.5 ]# ./configure --prefix=/data/php --with-mysql --with-mysql-sock --with-mysqli --enable-fpm --enable-soap --with-libxml-dir --with-openssl --with-mcrypt --with-mhash --with-pcre-regex --with-sqlite3 --with-zlib --enable-bcmath --with-iconv --with-bz2 --enable-calendar --with-curl --with-cdb --enable-dom --enable-exif --enable-fileinfo --enable-filter --with-pcre-dir --enable-ftp --with-gd --with-openssl-dir --with-jpeg-dir --with-png-dir --with-zlib-dir --with-freetype-dir --enable-gd-native-ttf --enable-gd-jis-conv --with-gettext --with-gmp --with-mhash --enable-json --enable-mbstring --disable-mbregex --disable-mbregex-backtrack --with-libmbfl --with-onig --enable-pdo --with-pdo-mysql --with-zlib-dir --with-pdo-sqlite --with-readline --enable-session --enable-shmop --enable-simplexml --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-wddx --with-libxml-dir --with-xsl --enable-zip --enable-mysqlnd-compression-support --with-pear --disable-fileinfo
[root@CENTOS7-128  php-7.1.5 ]# make && make install
[root@CENTOS7-128  php-7.1.5 ]# make test 
[root@CENTOS7-128  php-7.1.5 ]# cd /data/php
[root@CENTOS7-128  php ]# cp /data/php/etc/php-fpm.conf.default /data/php/etc/php-fpm.conf
[root@CENTOS7-128  php ]# cp /opt/php-7.1.5/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@CENTOS7-128  php ]# cp /opt/php-7.1.5/php.ini-production /data/php/lib/php.ini
[root@CENTOS7-128  php ]# vim /data/php/etc/php-fpm.conf    #并没有修改什么
[root@CENTOS7-128  php ]# cd /data/php/etc/php-fpm.d
[root@CENTOS7-128  php-fpm ]# cp www.conf.default   www.conf
[root@CENTOS7-128  php-fpm.d]# vi www.conf

[root@CENTOS7-128  php ]# chmod a+x /etc/init.d/php-fpm
[root@CENTOS7-128  php ]# chkconfig php-fpm on   #设置php开机自启
[root@CENTOS7-128  php ]# chmod +x /etc/profile
[root@CENTOS7-128  php ]# vim /etc/profile.d/php.sh
PATH=$PATH:/data/php/bin
export PATH
:x 退出保存
[root@CENTOS7-128  php ]# chmod +x /etc/profile.d/php.sh
[root@CENTOS7-128  php ]# source /etc/profile
[root@CENTOS7-128  php ]# ln -s /data/php/sbin/php  /bin/php


# 公钥生成:
[root@CENTOS7-128  /]# cd ~/.ssh/
[root@CENTOS7-128  .ssh ]# ssh-keygen -t rsa

[root@CENTOS7-128  .ssh ]# cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDfpDfhJI+6RQfy2xsyDIk3xMcgOKsHa1dZEhmw1xch7b6qeEP3ZnC5Vovg3qAb41JHeXJ04+tUc/Fv1js1v2kcc7t/HVj7zOhiGyET353xJKirmpXRjHlz8Gppdf4NjpVweD5JXIuBmWZBQx/H67K9rYZos9aYvyvT6Hw8DR6wu1rGOTPjnW2f3W2rNV1zmkwWK8yFSORe8ucjFfvAYDiQlDfmTbcuGBHk3k82VFBTH5g8JdQ6UVXO3FBvK9zY4b6H/58e1YZi2/WrLSRuw1rmJiucIbIbYSivttdBVSJwVlC0l73iSKUoMafirptqD+LX2Xw1j5zn7UuslcA6+yL9 root@CENTOS7-128
10、安装git命令:
[root@CENTOS7-128  / ]# yum install git
# 安装中国镜像composer:
[root@CENTOS7-128  / ]#cd opt
[root@CENTOS7-128  opt ]# wget https://getcomposer.org/download/1.4.2/composer.phar
[root@CENTOS7-128  opt ]# mv composer.phar /usr/local/bin/composer
# 上面两个步骤要么缓慢要么错误:  卸载命令: yum -y remove composer
[root@CENTOS7-128  opt ]# yum install composer       
[root@CENTOS7-128  opt ]# composer -V
# composer 从网址下载composer.phar 直接使用, 移动到 
[root@CENTOS7-128  opt ]#  mv composer.phar /user/local/bin/composer
[root@CENTOS7-128  opt ]#  chown +x test:test /user/local/bin/composer
# 执行以下命令时,需要切换到普通用户:useradd test,passwd test设置用户名密码命令。
[test@CENTOS7-128  opt ]# composer config -g repo.packagist composer https://packagist.phpcomposer.com
[test@CENTOS7-128  opt ]# composer install
11、php服务重启命令:
[root@CENTOS7-128 / ]#   /bin/systemctl restart  php-fpm.service      && service php-fpm restart
12、nginx修改配置文件后,需要-t 测试及 -s reload 重载生效。
[root@CENTOS7-128 nginx]# vi conf/nginx.conf
[root@CENTOS7-128 nginx]# ./sbin/nginx -t
the configuration file /data/nginx/conf/nginx.conf syntax is ok
configuration file /data/nginx/conf/nginx.conf test is successful
[root@CENTOS7-128 nginx]# ./sbin/nginx -s reload
13、查看php服务:ps -ef |grep php ps -ef | grep nginx
redis下载路径:http://download.redis.io/redis-stable.tar.gz
PHP的配置文件为:/usr/local/lib/php.ini
php-fpm的配置文件为:/usr/local/etc/php-fpm.conf
php-fpm的错误日志为:/usr/local/var/log/php-fpm.log
php-fpm.conf文件的在线说明文档:http://php.net/manual/en/install.fpm.configuration.php
相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
25天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
205 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
11天前
|
关系型数据库 MySQL Linux
Linux环境下MySQL数据库自动定时备份实践
数据库备份是确保数据安全的重要措施。在Linux环境下,实现MySQL数据库的自动定时备份可以通过多种方式完成。本文将介绍如何使用`cron`定时任务和`mysqldump`工具来实现MySQL数据库的每日自动备份。
29 3
|
11天前
|
监控 关系型数据库 MySQL
Linux环境下MySQL数据库自动定时备份策略
在Linux环境下,MySQL数据库的自动定时备份是确保数据安全和可靠性的重要措施。通过设置定时任务,我们可以每天自动执行数据库备份,从而减少人为错误和提高数据恢复的效率。本文将详细介绍如何在Linux下实现MySQL数据库的自动定时备份。
25 3
|
26天前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
|
21天前
|
Linux UED iOS开发
|
tengine 应用服务中间件 Linux
linux下tengine2.2.0编译安装、开机启动、反向代理配置及健康检查
tengine2.2.0编译安装、开机启动、反向代理配置及健康检查 tengine是由淘宝发起的一个基于nginx的开源项目,nginx的吞吐量比较高、快速、稳定,而且反向代理和负载均衡使用nginx,也是最常见的。
2030 0
|
7天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
29 3
|
7天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
25 2
|
15天前
|
缓存 监控 Linux
|
18天前
|
Linux Shell 数据安全/隐私保护