本篇讲解如何配置php开发环境,让你的php代码可以正常的在网页中运行。

准备工作

  • linux centos7操作系统
  • ssh软件
  • nginx

php资源

想要了解更多关于php的内容,请访问:

安装php

本次安装介绍两个版本的安装方法,一个是广泛应用的5.x,另一个是最新版的7.2。

  • 安装php5.4+
  • 安装php7.2

安装php5.x

第一步,使用yum安装php。

yum install php

第二步,安装php的相关模块。

yum install php-mysql php-fpm php-cli php-dba php-embedded php-gd php-common php-bcmatch php-enchant php-devel

第三步,打印php版本。

php -v

如果有显示版本号,说明安装成功。

安装最新版php7.2

安装之前,如果你的系统还有php旧版本,请卸载,避免发生冲突。

卸载方法:yum -y remove php*

由于yum没有php7.2,所以需要额外配置php7.2版本,方法如下:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

开始安装php7.2版本

yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml

php-fpm是php的一个php的fast-cgi服务管理器,专门用于控制php-cgi的fastcgi进程。

所以我们开始启动php-fpm服务。

systemctl start php-fpm
systemctl enable php-fpm

最后运行php -v就可以查看版本号了。

nginx配置php环境

打开nginx配置文件,输入以下内容。

vi /etc/nginx/nginx.conf

在配置文件里面找到http { },在里面输入:

# fastcgi conf
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
# php配置
server {
  listen   80;  # 监听端口
  server_name  www.example.org; # 访问域名
  access_log  /var/www/eg/access.log; # 成功日志
  error_log  /var/www/eg/access.log; # 错误日志
  root   /var/www/eg; # 根目录
  index  index.html index.htm index.php; # 首页文件格式
  # php解析配置
  location ~ .*\.(php|php5)?$ {
    root   /var/www/html;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  /var/www/eg$fastcgi_script_name;
    includefastcgi_params;
  }
  # 静态文件图片规则
  location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
    expires  30d;
  }
  # 静态文件js、css规则
  location ~ .*\.(js|css)?$ {
    expires  1h;
  }
}

配置完了以后重载重启nginx。

systemctl reload nginx
systemctl restart nginx

然后创建一个php文件,访问地址,便可以看到输出结果。

  • 创建目录:mkdir /var/www/eg
  • 创建文件: vi /var/www/eg/info.php

输入以下内容:

<?php
 echo "hello,world!";
 phpinfo();
?>

预览

在本地hosts文件增加解析记录,这里的ip就是你远程服务器的ip地址了。

192.168.4.11 www.example.org

打开游览器,输入www.example.org就可以看到之前编辑的站点的php文件内容了。

Linux CentOS7系统中php安装配置的更多相关文章

  1. Linux CentOS7系统中phpMyAdmin安装配置

    今天介绍的是如何在Linux CentOS7系统中配置phpMyAdmin. 目录 环境准备 安装包 基本设置 网站预览 环境准备 linux centos7系统 ssh软件 php语言环境 mysq ...

  2. Linux CentOS7系统中mysql8安装配置

    mysql是世界上最流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司所有.今天我将记录一下如何在Linux centos7系统上安装和配置MySQL. 目录 环境准 ...

  3. Linux CentOS7系统中ssh的用法

    大家都知道,公司买上服务器,不可能实时在线操作虚拟机,也没有那个时间和精力登录到公司的云服务商官网进行操作,一来不安全,二来也效率不高. 如果是购买的虚拟主机,你可以使用ftp进行本地程序文件传输和从 ...

  4. 在Linux CentOS7系统中搭建LNMP

    LNMP就是Linux+Nginx+MySQL+PHP,既然是在Linux CentOS7那么Linux就是已经安装好了.所以接下百度一下接下来的教程,整理测试如下: 教程是centos6.2的有点老 ...

  5. linux(Centos7系统)中安装JDK、Tomcat、Mysql

    安装前准备两个工具:(360可以安装) 1.JDK的安装 使用yum命令安装 .查看是否已安装JDK # yum list installed |grep java .卸载CentOS系统Java环境 ...

  6. CentOS系统中Tomcat安装配置

    Tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache.Sun和其他一些公司及个人共同开发而 ...

  7. Linux(CentOS7)系统中部署Django web框架

    1. 概述 部署django和vue架在逻辑上可以分为web层与数据库层:web前端通过实现了WSGI协议的模块对python代码进行解析,而python代码中则通过特定于数据库的操作接口对数据库进行 ...

  8. Shell脚本实现在Linux系统中自动安装JDK

    A:本脚本运行的机器,Linux B:待安装JDK的机器, Linux 首先在脚本运行的机器A上确定可以ssh无密码登录到待安装jdk的机器B上,然后就可以在A上运行本脚本: 复制代码 代码如下: $ ...

  9. 【Oracle RAC】Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂)

    [Oracle RAC]Linux系统Oracle11gR2 RAC安装配置详细过程V3.1(图文并茂) 2 Oracle11gR2 RAC数据库安装准备工作2.1 安装环境介绍2.2 数据库安装软件 ...

随机推荐

  1. 2018.07.22 bzoj3613: [Heoi2014]南园满地堆轻絮(逆序对结论题)

    传送门 做这道题有一个显然的结论,就是要使这个数列单调不减,就要使所有逆序对保证单调不减,也就是求出所有逆序对的最大差值,然后除以2然后就没了. 代码如下: #include<bits/stdc ...

  2. 30. Child Labor Problem and Its Solution 童工问题及解决方法

    30. Child Labor Problem and Its Solution 童工问题及解决方法 ① Over a hundred years ago,Charles Dickens shocke ...

  3. 【科普】Web(瓦片)地图的工作原理

    [译者按:在看MapBox Guides文档时,看到这篇 How do web maps work?,这篇文档通俗易懂地阐述了Web地图是如何工作的,其实更偏向讲瓦片地图的工作原理,鉴于之前很多人不了 ...

  4. 201709013工作日记--Android消息机制HandlerThread

    1.首先来看一个常规的handler用法: 在主线程中建立一个handler: private Handler mHandler = new Handler() { @Override public ...

  5. 深入理解BS结构应用程序

    随着学习的深入,和编程经验的丰富,对BS应用程序有一些认识. 在一些讨论软件技术的QQ群里,或一些社区.BBS中,经常会有一些初学者会犯一些认知性的错误.比如经常会有一些朋友提这样的一些问题:“我怎么 ...

  6. springmvc 孔浩 hibernate

    以上为项目文件 用到的jar包:http://pan.baidu.com/s/1kT1Rsqj 1. model-User 2. beans.xml-去哪些包中找annotation:查找相应的实体类 ...

  7. Oracle sql 优化の常用方式

    1.不要用 '*' 代替所有列名,特别是字段比较多的情况下 使用select * 可以列出某个表的所有列名,但是这样的写法对于Oracle来说会存在动态解析问题.Oracle系统通过查询数据字典将 ' ...

  8. Java位操作全面总结[ZZ]

    Java位操作全面总结 在计算机中所有数据都是以二进制的形式储存的.位运算其实就是直接对在内存中的二进制数据进行操作,因此处理数据的速度非常快.在实际编程中,如果能巧妙运用位操作,完全可以达到四两拨千 ...

  9. 解决Redis/Codis Connection with master lost(复制超时)问题

    今天在线上环境中遇到了codis-server报警,按照常规处理流程进行处理,报错步骤如下: 首先将codis-slave的rdb文件移除,并重启codis-slave 在codis-dashbord ...

  10. 利用Kettle进行SQLServer与Oracle之间的数据迁移实践

    Kettle简介 Kettle(网地址为http://kettle.pentaho.org/)是一款国外开源的ETL工具,纯java编写,可以在Windows.Linux.Unix上运行,数据抽取高效 ...