#centos7搭建php8+nginx环境#

场景:为了实现上传的pdf文件转成png图片,需要搭建一个php8+nginx的运行环境,最后安装imagic扩展

安装顺序 php-> linux-> imagemagick -> ghostscript -> imagick
一:安装php+nginx环境

1、安装remi扩展源

remi源是Remi repository是包含最新版本PHP和MySQL包的Linux源,由Remi 提供维护。有个这个源之后,使用YUM安装或更新PHP、MySQL、phpMyAdmin等服务器相关程序的时候就非常方便了。

[root@localhost ~]# yum -y install epel-release

[root@localhost ~]#

wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm

# 如果网不好的话可以考虑下清华软件源
#https://mirrors.tuna.tsinghua.edu.cn/remi/enterprise/remi-release-7.rpm
sudo rpm -ivh remi-release-7.rpm

2、安装YUM管理工具

[root@localhost ~]# yum -y install yum-utils

3、列出php80所有可用安装包

[root@localhost ~]# yum list |grep php80

4、查看生成的Yum源仓库

[root@localhost ~]# ll /etc/yum.repos.d


5、安装PHP及插件(插件功能根据情况安装 这里只安装了比较常用的插件)

[root@localhost ~]# yum -y install php80-php-cli php80-php-xml php80-php-common php80-php-devel php80-php-embedded php80-php-fpm php80-php-gd php80-php-mbstring php80-php-mysqlnd php80-php-pdo php80-php-opcache php80-php-xml php80-php-soap

6、查看是否安装成功及php配置文件以及对应目录

[root@localhost ~]# rpm -qa |grep php80

[root@localhost ~]# rpm -ql php80-php-fpm


7、创建软连接

[root@localhost ~]# ln -sf /opt/remi/php80/root/usr/bin/php* /usr/local/bin

8、查看PHP版本

[root@localhost ~]# php -v

PHP 8.0.28 (cli) (built: Feb 14 2023 11:05:44) ( NTS gcc x86_64 )

Copyright (c) The PHP Group

Zend Engine v4.0.28, Copyright (c) Zend Technologies

    with Zend OPcache v8.0.28, Copyright (c), by Zend Technologies

9、启动PHP-FPM

[root@localhost ~]# systemctl start php80-php-fpm

10、设置开机自启动

[root@localhost ~]# systemctl enable php80-php-fpm

11、常用基本操作

1)启动PHP

[root@localhost ~]# systemctl start php80-php-fpm

2)停止PHP

[root@localhost ~]# systemctl stop php80-php-fpm

3)重载PHP

[root@localhost ~]# systemctl reload php80-php-fpm

4)重启PHP

[root@localhost ~]# systemctl restart php80-php-fpm

5)查询PHP运行状态

[root@localhost ~]# systemctl status php80-php-fpm

6)查询PHP进程

[root@localhost ~]# ps -ef |grep php-fpm

7)查询PHP监听端口

[root@localhost ~]# netstat -lntup |grep php-fpm

8)卸载PHP

[root@localhost ~]# yum -y remove php80*

二:安装nginx

1:安装EPEL仓库,以便安装额外的包:
    sudo yum install epel-release
2:安装Nginx:
   sudo yum install nginx
3:启动并设置Nginx开机自启:
  sudo systemctl start nginx
  sudo systemctl enable nginx

3:配置nginx.conf配置文件
 

location ~ \.php(.*)$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            fastcgi_param  PATH_INFO  $fastcgi_path_info;
            fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
            include        fastcgi_params;
        }


三:安装扩展

1:安装基础软件
yum install ImageMagick
yum install ImageMagick-devel
yum -y install ghostscript

2:安装php的imagick扩展  
    注意imagick与php版本有关系,低版本的php有可能出现不兼容的情况
    

yum install php-pear 
yum -y install php80-php-devel
yum install gcc
#安装gcc的另外一个方法
#yum install gcc gcc-c++ autoconf automake
pecl install imagick
#pecl卸载插件
#pecl uninstall imagick

修改配置文件(php.ini具体位置根据实际情况定,使用phpinfo()查看它的路径,因为查看路径的方式很多,例如使用php --ini , 刺方法显示的路径可能不一样)
在/etc/php.ini 加上extension=imagick.so的安装路径,如图所示

重启php-fpm: 使用的是php80的,重启命令如下

systemctl start  php80-php-fpm
systemctl stop  php80-php-fpm

查看是否成功,如图所示成功


四:验证一下
convert -v               # imagemagick
php -m | grep imagick   # imagick
gs -v                   # ghostscript
 

相关推荐

  1. Linux CentOSNGINX环境

    2024-06-06 13:18:01       56 阅读
  2. Centos7环境安装PHP8

    2024-06-06 13:18:01       58 阅读
  3. Centos 7.9 服务器环境

    2024-06-06 13:18:01       43 阅读
  4. centos7 nginx本地yum仓库

    2024-06-06 13:18:01       59 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-06-06 13:18:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-06-06 13:18:01       101 阅读
  3. 在Django里面运行非项目文件

    2024-06-06 13:18:01       82 阅读
  4. Python语言-面向对象

    2024-06-06 13:18:01       91 阅读

热门阅读

  1. python 做成Excel并设置打印区域

    2024-06-06 13:18:01       30 阅读
  2. Python | MATLAB | R 心理认知数学图形模型推断

    2024-06-06 13:18:01       28 阅读
  3. 力扣1838.最高频的元素的频数

    2024-06-06 13:18:01       29 阅读
  4. C/C++中volatile关键字

    2024-06-06 13:18:01       31 阅读
  5. SpringBoot @ModelAttribute

    2024-06-06 13:18:01       29 阅读
  6. centos7 安装 mysql5.7 LTS

    2024-06-06 13:18:01       28 阅读
  7. Springboot接收参数的21种方式

    2024-06-06 13:18:01       25 阅读
  8. ngrok的使用

    2024-06-06 13:18:01       32 阅读
  9. HTML5 Web Workers 详解 (2)

    2024-06-06 13:18:01       24 阅读
  10. 查看 WSL2 (Windows Subsystem for Linux 2) IP 地址

    2024-06-06 13:18:01       31 阅读