Centos7安装PHP及Nginx的教程详解

随着服务端centos的应用越来越普及,centos7的使用也越来越多,这两年来我从一个很少接触centos服务器端维护的小白,也越来越多的基础其维护操作,给我带来了不少困扰的同时也增加了不少centos服务器搭建和运维的知识,今天就来一步一步记录一下。

一、安装PHP

随着微信13年开始大火,php的运用也再次火了起来,市面上很多企业都选择使用php作为其应用后台,个人认为原因有

1、php的成本低

2、php的入门快

3、php的开发周期相对较短

4、tp5的诞生提高了php接口开发的效率。正因为需求这么多,因此很多企业的服务器配置就需要能够支持php环境从而完成项目搭建。其实安装centos安装软件一般都分为两种,第一是快速安装 第二是编译安装,个人建议编译安装,至于快速安装方式简单也快速,只要加载到相应的php源,通过yum install即可完成一步一步的安装过程,我这里仅仅讲一下如何进行编译安装以及编译安装的过程。

第一步、安装前前检查系统中是否默认带有php,可以通过查找php文件或者进程进行校验,如果有安装且不是我们需要的版本,可以通过一下命令卸载相关文件:

yum remove php*

第二步、安装相关php依赖

yum install -y gcc gcc-c++ libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel freetype freetype-devel

第三步、去php官网http://php.net/downloads.php 查看所要下载的tar.gz链接,如下图所示:

php 各版本列表

在这个页面选择你要下载的国家的文件源

选择文件源后复制文件下载链接,在系统中通过通过wget命令下载编译安装,个人习惯在/usr/local目录下操作,具体步骤如下:

进入操作目录: cd /usr/local

下载文件: wget http://tz1.php.net/distributions/php-7.2.10.tar.gz

解压文件: tar -zxvf php-7.2.10.tar.gz

进入解压后文件目录: cd php-7.2.10.tar.gz

然后通过一下命令编译:

./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-opcache --with-pdo-mysql --enable-maintainer-zts -with-mcrypt=/usr/include --with-mysql=shared,mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --enable-ftp --enable-session --with-gettext --with-jpeg-dir --with-freetype-dir --enable-fastcgi --without-gdbm --disable-fileinfo

然后通过以下命令完成最后的编译安装:

make && make install

如果安装过程提示有错误或者依赖就需要根据具体的情况去解决,至此我们可以通过php -v命令查看是否成功安装。

注:如果查看的版本和自己安装版本不一致,可以查找提示的版本文件在哪个位置,然后删除,也可以不用管。之后我们在通过修改环境变量的方式指向我们安装的文件目录,操作方式如下:

首先编辑环境变量文件: vim /etc/profile

文件末尾加上  export PATH="/usr/local/php/bin:$PATH"

其中"/usr/local/php/bin"为你安装的具体路径,保存退出后,执行以下更改即可,执行命令:

source /etc/profile

这个时候我们再次使用php -v查看当前版本就可以看到我们所安装的版本号了。

二、安装Nginx

Nginx作为除apache外最主流的服务器软件了,因此安装Ngix也是一种基本配置了,编译安装的方式均类似:

第一步、检查安装相关依赖包

yum -y install gcc gcc-c++ autoconf automake make

yum -y install zlib zlib-devel openssl 

yum -yinstallopenssl-devel pcre pcre-devel

第二步、前往nginx官网找到你想要安装的版本链接,官网地址:http://nginx.org/download/,如下图所示:

Nginx版本列表

复制相应的版本链接,进入上面的操作目录,/usr/local进行操作

进入目录: cd /usr/local

下载文件: wget http://nginx.org/download/nginx-1.8.0.tar.gz

解压文件: tar -zxvf nginx-1.8.0.tar.gz

进入解压后文件目录: cd nginx-1.8.0

然后通过命令编译安装:

. /configure
make && make install

安装完成之后在/usr/local文件夹下面会多出一个nginx的文件夹,里面有conf、html、logs、sbin四个文件,我们只需要运行 ./sbin/nginx 即可启动nginx服务。

启动后校验服务是否真的启动浏览器访问服务器地址查看是否成功启动,个人喜欢通过curl http://localhost方式校验,因为如果因为某一些服务器提供商禁止80 或者站点端口,通过外网的浏览器是无法访问通过的,当然你也可以通过grep或者nstat查看相应服务是否已经启动了。

至此,centos7下的php以及nginx的安装就结束了,有更多centos服务器端配置交流,可在文末留言评论。

总结

以上所述是小编给大家介绍的Centos7安装PHP及Nginx的教程详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 解决vue项目nginx部署到非根目录下刷新空白的问题

    1.修改config/index.js 2.修改路由route/index 3.后台配置nginx 以上这篇解决vue项目nginx部署到非根目录下刷新空白的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 开启Nginx时端口被占用提示:Address already in use

    如图所示: 查看端口占用情况: sudo netstat -apn | grep 80 查看占用端口的进程: ps -ef | grep 3345 通过结果可知,80端口是Nginx本身占用了,可以杀掉进程,重新启动Nginx sudo kill -9 3345 sudo netstat -apn | grep 80 成功杀掉进程后,启动Nginx 启动Nginx成功,在浏览器输入Nginx所在系统的ip地址,验证Nginx是否启动成功 下面介绍下Nginx的启动.停止与重启 启动 启动代码格式

  • 一段万能的nginx接口实现反向代理配置

    1.什么是代理服务器 代理服务器,客户机在发送请求时,不会直接发送给目的主机,而是先发送给代理服务器,代理服务接受客户机请求之后,再向主机发出,并接收目的主机返回的数据,存放在代理服务器的硬盘中,再发送给客户机. 2.为什么要使用代理服务器 1)提高访问速度 由于目标主机返回的数据会存放在代理服务器的硬盘中,因此下一次客户再访问相同的站点数据时,会直接从代理服务器的硬盘中读取,起到了缓存的作用,尤其对于热门站点能明显提高请求速度. 2)防火墙作用 由于所有的客户机请求都必须通过代理服务器访问远程

  • docker nginx 运行后无法访问的问题解决

    ## 1 最近在学docker部署,一开始打算将nginx先docker化的. 对照官方的docker镜像介绍说明,进行自定义配置 将官方的nginx.conf复制出来后,修改添加了一些自定义,主要是屏蔽了default.conf,以及include文件夹 sites-available # include /etc/nginx/conf.d/.conf; include /etc/nginx/sites-available/; 官方原先配置 user nginx; worker_process

  • nginx信号集案例详解

    之前工作时候,一台引流测试机器的一个 ngx_lua 服务突然出现了一些 HTTP/500 响应,从错误日志打印的堆栈来看,是不久前新发布的版本里添加的一个 Lua table 不存在,而有代码向其进行索引导致的.这令人百思不得其解,如果是版本回退导致的,那么为什么使用这个 Lua table 的代码没有被回退,偏偏定义这个 table 的代码被回退了呢? 经过排查发现,当时 nginx 刚刚完成热更新操作,旧的 master 进程还存在,因为要准备机器重启,先切掉了引流流量(但有些请求还在),

  • Nginx日志管理介绍

    Nginx日志描述 通过访问日志,你可以得到用户地域来源.跳转来源.使用终端.某个URL访问量等相关信息:通过错误日志,你可以得到系统某个服务或server的性能瓶颈等.因此,将日志好好利用,你可以得到很多有价值的信息. 参数明细表: $remote_addr 客户端的ip地址(代理服务器,显示代理服务ip) $remote_user 用于记录远程客户端的用户名称(一般为"-") $time_local 用于记录访问时间和时区 $request 用于记录请求的url以及请求方法 $st

  • 如何通过nginx负载均衡跳转https

    web端拷贝证书与密钥 scp -rp -P52113 /application/nginx/conf/key 10.0.0.5:/application/nginx/conf/ 在nginx负载均衡服务端配置 vim /application/nginx/conf/nginx.conf worker_processes 2; error_log logs/error.log; events { worker_connections 65535; } http { include mime.ty

  • Nginx的信号控制

    Nginx简介 Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP的代理服务器.Nginx由俄罗斯的Rambler.ru站点开发,而且官方测试Nginx可以支撑五万并发. Nginx官网:http://nginx.org 本文主要讲解Nginx运行后如何控制它,以便它的停止或者重新启动. // 启动和停止nginx 当前目录:/usr/local/bin/nginx 启动: ./sbin/nginx 停止 : kill -INT master 主机进程号 Ng

  • Linux系统下为Nginx安装多版本PHP

    我们在安装配置服务器LNPM环境时应该考虑到PHP多版本并存的问题,下面是实现Linux系统下为Nginx安装多版本PHP的实现方法 linux版本:64位CentOS 6.4 Nginx版本:nginx1.8.0 php版本:php5.5.28 & php5.4.44 注意假如php5.5是主版本已经安装在/usr/local/php目录下,那么再安装其他版本的php再指定不同安装目录即可. 安装PHP # wget http://cn2.php.net/get/php-5.4.44.tar.

  • Nginx的安装和多域名配置的实现方法

    Nginx安装 centos6.x yum默认没有nginx的软件包 安装方式: 到nginx下载页面http://nginx.org/en/linux_packages.html#stable,复制CENTOS 6的nginx软件源安装包 运行命令:wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm 安装rpm包 yum install nginx-rel

  • 详解CentOS配置Nginx官方的Yum源

    一直都在使用阿里云购买的centos进行项目部署,最近在本地机器搭建了虚拟机进行某些项目联系时,却发现使用命令yum -y install nginx不能安装nginx,本地centos系统的yum仓库并没有nginx,查找资料得以解决,做记录如下: 由于yum源中没有我们想要的nginx,那么我们就需要创建一个"/etc/yum.repos.d/nginx.repo"的文件,其实就是新增一个yum源. [root@localhost ~]# vim /etc/yum.repos.d/

随机推荐