环境:VMware、CentOS-7-x86_64-DVD-2009.iso、nginx-1.26.1、php-7.2.0、postgresql-12

php最好安装对应php项目所需版本,否则会出现不兼容问题。

一、VMware安装CentOS7操作系统

下载 Linux Centos 7 映像:https://mirrors.aliyun.com/centos/7/isos/x86_64/?spm=a2c6h.25603864.0.0.62e64511P2vJCT

选择“CentOS-7-x86_64-DVD-2009.iso

新建虚拟机

  1. 默认 典型(推荐),下一步
  2. 稍后安装操作系统,下一步
  3. Linux,版本 CentOS 7 64位,下一步
  4. 自行调整名称、位置,下一步
  5. 默认(拆分成多个文件),下一步
  6. 完成
  7. 编辑虚拟机设置
    网络适配器,桥接模式(不用勾选“复制物理网络连接状态”)
    CD/DVD,选择刚才下载的ISO映像文件
    选项 -> 高级 -> 固件类型(选择UEFI)确定

开启虚拟机

  1. 选择第一个“Install CentOS 7”回车
  2. 等待弹出窗体,拉到最下选择“中文”简体中文,继续
  3. 点击安装位置,什么也不用动,左上角点击完成
  4. 网络和主机名,以太网开关打开,左上角点击完成
  5. 开始安装
  6. 配置 Root 密码,左上角点击完成
  7. 等待安装
  8. 重启

二、安装PostgreSQL数据库

 PostgreSql官网 -> Download -> 选择Linux -> 再选择Red Hat/Rocky/AlmaLinux -> 选择(版本“12”平台“Red Hat Enterprise, CentOS, Scientific or Oracle version 7”架构“x86_64”)

 选择完后,下面有对应命令,逐步执行即可

sudo yum install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
sudo yum install -y postgresql12-server --安装
sudo /usr/pgsql-12/bin/postgresql-12-setup initdb --初始化数据库
sudo systemctl enable postgresql-12 --开机启动 postgresql-12 服务
sudo systemctl start postgresql-12 --启动 postgresql-12 服务

修改密码
su - postgres    --切换用户
psql        --进入sql面板
alter user postgres with password 'postgres'; --修改密码,默认没有密码
\q         --退出sql面板
exit        --退出postgres用户shell会话

配置外网也可以连接数据库
/var/lib/pgsql/12/data/pg_hba.conf(
输入“:86”跳转86行;
按“i”编辑模式;
================================按照如下修改
# IPv4 local connections:
host all all 0.0.0.0/0 md5
# IPv6 local connections:
host all all ::1/128 md5
================================
按“Esc”退出编辑模式
输入“:wq”保存退出)

vi /var/lib/pgsql/12/data/postgresql.conf(
:60 --跳转60行
将“#listen_addresses = 'localhost'”改为 “listen_addresses = '*'”)

sudo systemctl restart postgresql-12   --重新启动服务

psql -h localhost -p 5432 -U postgres  --验证连接
\q                    --退出

firewall-cmd --zone=public --add-port=5432/tcp --permanent --开启5432端口

firewall-cmd --reload   --重启防火墙

三、安装php 7.2.0


安装依赖:yum -y install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel libmcrypt libmcrypt-devel readline readline-devel libxslt libxslt-devel icu libicu libicu-devel gcc-c++ php-pgsql php-pdo-pgsql postgresql-devel

mkdir /usr/local/php   --创建目录

scp D:\System\tar.gz\php-7.2.0.tar.gz root@ip:/usr/local/php --将本地包拷贝到服务器(用powershell执行此命令)

cd /usr/local/php --切换目录

tar -zxvf /usr/local/php/php-7.2.0.tar.gz --解压

cd php-7.2.0         --切换目录

编译:./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-pdo-pgsql --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --enable-intl --enable-pcntl --enable-ftp --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-opcache --with-xsl

make && make install --安装

cp php.ini-production /usr/local/php/etc/php.ini     --把php.ini拷贝到安装目录下的配置文件目录

cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm --将php-fpm控制脚本加入到/etc/init.d/下

chmod +x /etc/init.d/php-fpm --给予可执行权限

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

vi /usr/local/php/etc/php-fpm.conf(按照如下修改
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
log_level = notice)

vi /usr/local/php/etc/php-fpm.d/www.conf(按照如下修改
user = www
group = www)

sudo groupadd www --创建“www”组

sudo useradd -r -g www www --创建“www”用户并添加到 www 组

php-fpm命令(执行启动
/etc/init.d/php-fpm start #启动
/etc/init.d/php-fpm stop #停止
/etc/init.d/php-fpm restart #重启
chkconfig php-fpm on     #开机启动)

vi /etc/profile(在末尾添加export PATH="/usr/local/php/bin:$PATH") --将php添加到环境变量

source /etc/profile --重新加载

php -v

四、安装nginx 1.26.1


mkdir /usr/local/nginx --创建目录

scp D:\System\tar.gz\nginx-1.26.1.tar.gz root@ip:/usr/local/nginx --将本地包拷贝到服务器(用powershell执行此命令)

tar -zxvf /usr/local/nginx/nginx-1.26.1.tar.gz --解压

yum install -y gcc zlib zlib-devel openssl openssl-devel pcre pcre-devel --安装依赖

cd /usr/local/nginx/nginx-1.26.1 --切换目录

./configure --编译

make && make install --安装

firewall-cmd --zone=public --add-port=80/tcp --permanent --开启80端口

firewall-cmd --reload --重启防火墙

/usr/local/nginx/sbin/nginx --启动nginx
 
浏览器地址栏输入http://ip出现如下图,安装成功

 

五、自行配置nginx.conf

vi /usr/local/nginx/conf/nginx.conf

https://www.baidu.com/

CentOS7系统搭建web环境 php&nginx&pgsql的更多相关文章

  1. Linux(centOS7)系统搭建Java环境变量

    [mikecheng@localhost ~]$ su[root@localhost usr]# mkdir tomcat[root@localhost usr]# mkdir java[root@l ...

  2. 阿里云CentOS7系统搭建JavaWeb环境

    一,准备工作 1,安装目录 我们创建如下路径/usr/develop,然后在develop目录下面创建java,tomcat和mysql三个目录即可. 二,配置JDK 1.理解wget命令 wget命 ...

  3. centos7系统下 docker 环境搭建

    运行环境: VMware Workstation Pro 在虚拟机中安装centos7系统, 选择最小安装, 网络连接方式选择的桥接(与宿主机在同一IP段)centos7一定要安装64位, docke ...

  4. CentOS7.1下生产环境Keepalived+Nginx配置

    CentOS7.1下生产环境Keepalived+Nginx配置 [日期:2015-07-20] 来源:Linux社区  作者:soulful [字体:大 中 小]   注:下文涉及到配置的,如无特别 ...

  5. 快速搭建Web环境 Angularjs + Express3 + Bootstrap3

    快速搭建Web环境 Angularjs + Express3 + Bootstrap3 AngularJS体验式编程系列文章, 将介绍如何用angularjs构建一个强大的web前端系统.angula ...

  6. MAMP和WAMP搭建Web环境,数据库,数据分布可视化

    MAMP和WAMP搭建Web环境,数据库,数据分布可视化 1. 数据库 用MAMP和WAMP搭建Web环境,数据分布可视化 Web环境Web服务器:Apache.Nginx,处理Web请求数据库:My ...

  7. 搭建windows环境下(nginx+mysql+php)开发环境

    搭建windows环境下(nginx+mysql+php)开发环境   1. 所需准备应用程序包        1.1 nginx 程序包nginx-1.0.4.zip或其他版本(下载地址: http ...

  8. 93.快速搭建Web环境 Angularjs + Express3 + Bootstrap3

    转自:https://www.cnblogs.com/wawahaha/p/3946023.html 前言 Angularjs越用越顺手,不仅代码量比jQuery少很多,而且实现思路特别清晰,构建大型 ...

  9. 使用windos电脑模拟搭建集群(四)web环境 linux+nginx+jdk+tomcat

    1.使用ansible的playbook自动安装两台web主机的nginx 1.配置模块 主机清单 2.创建 playbook目录并编写安装nginx的playbook mkdir -p playbo ...

  10. centos7 yum搭建lnmp环境及配置wordpress超详细教程

    yum安装lnmp环境是最方便,最快捷的一种方法.源码编译安装需要花费大量的人类时间,当然源码编译可以个性化配置一些其它功能.目前来说,yum安装基本满足我们搭建web服务器的需求. 本文是我根据近期 ...

随机推荐

  1. 基于EPCLYPS的DDS控制器(二)

    关于ZmodAWGController ZmodAWGController 介绍 双击IP核,进入的第一个界面会有Ch1 Gain Static Configuration的选项修改为 "0 ...

  2. 11.Node节点维护

    题目:Node节点维护 配置环境kubectl config use-context ek8s 将名为ek8s-node-0的node节点设置为不可用,并重新调度该node上所有运行的pods. 官方 ...

  3. 在线自动加字幕!超快完成Pr的字幕制作!

    在线自动加字幕!超快完成Pr的字幕制作! https://www.bilibili.com/video/BV1T441167eX/?spm_id_from=333.788.videocard.3 ht ...

  4. 一图明白ACHI,SATA之间的关系

    从上图中可以看到,SATA与PCI-E不仅可以指代物理的接口,还可以指代物理接口使用的传输协议. M.2物理接口可以使用SATA.PCI-E传输协议. U.2可以使用PCI-E传输协议.在网上搜了一下 ...

  5. VueJs创建网易音乐播放器和vueJs常见错误处理

    学习vuejs之后,总得自己上手写一些完整的应用,才能够更加了解各个结构与组件之间的运用. 下面从最基础的准备工作开始: 用vue-cli搭建vue应用:先确保自己已经安装Node环境. (1)Win ...

  6. WordPress函数小结

    1.body_class()函数 为了区分不同的页面,可以用WordPress的body_class()函数 可以在head.php中给body添加:<body <?php body_cl ...

  7. Linux上执行内存中的脚本和程序

    在Linux中可以不需要有脚本或者二进制程序的文件在文件系统上实际存在,只需要有对应的数据在内存中,就有办法执行这些脚本和程序. 原理其实很简单,Linux里有办法把某块内存映射成文件描述符,对于每一 ...

  8. linux下使用fdisk进行磁盘分区详解

    目录 一.前言 二.关于磁盘分区的结构 三.fdisk命令详解 四.使用fdisk进行磁盘分区 4.1 磁盘分区规划 4.2 fdisk进行磁盘分区 4.3 格式化分区 4.4 创建挂载点/挂载目录 ...

  9. C# Bitmap 在winform里编辑了,再次重新编辑,报gdi+错误解决办法

    经过排查,var bitmap=new Bitmap()这个局部对象,没有Dispose所致.虽然是局部的对象,但还是需要Dispose:

  10. Windows系统命令行的最佳实践

    更多博文请关注:https://blog.bigcoder.cn 每次看到Mac生态中炫酷的命令行工具,我就一脸羡慕,但是奈何财力不足,整不起动辄上万的电脑,搬砖人就只能折腾折腾手里的这台window ...