Centos6.4 编译安装 nginx php的方法

Centos6.4 编译安装 Nginx + PHP 的方法

本文主要讲解如何在 CentOS 6.4 系统上,使用源码编译的方式安装 Nginx 和 PHP,以便于自定义编译选项和版本。下面是具体的操作步骤。

1. 安装编译环境

在编译 Nginx 和 PHP 之前,需要先安装编译环境。

$ yum install -y gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl openssl-devel

2. 安装 Nginx

2.1 下载 Nginx 源码

$ wget http://nginx.org/download/nginx-1.18.0.tar.gz

2.2 解压源码包

$ tar zxvf nginx-1.18.0.tar.gz

2.3 配置编译选项并编译安装

$ cd nginx-1.18.0
$ ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
$ make && make install

2.4 启动 Nginx 服务

$ /usr/local/nginx/sbin/nginx

3. 安装 PHP

3.1 下载 PHP 源码

$ wget http://php.net/get/php-5.6.40.tar.gz/from/this/mirror -O php-5.6.40.tar.gz

3.2 解压源码包

$ tar zxvf php-5.6.40.tar.gz

3.3 配置编译选项并编译安装

$ cd php-5.6.40
$ ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-fpm-user=www --with-fpm-group=www --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/png --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-mcrypt --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --disable-fileinfo --enable-opcache
$ make && make install

3.4 复制 php.ini 文件并重命名

$ cp php.ini-development /usr/local/php/etc/php.ini

3.5 配置 PHP-FPM

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

修改以下几个选项:

user = www
group = www
listen = 127.0.0.1:9000

3.6 启动PHP-FPM服务

$ /usr/local/php/sbin/php-fpm

3.7 测试 PHP 是否正常工作

在 /usr/local/nginx/html 目录下创建一个 phpinfo.php 文件:

$ cd /usr/local/nginx/html
$ vim phpinfo.php

写入以下内容:

<?php
phpinfo();
?>

访问 http://your_ip_address/phpinfo.php ,即可看到 PHP 的配置信息。

示例一

在上述安装流程中,我们使用的是比较常见的安装选项。如果需要安装其它模块或者自定义编译选项,需要按照具体的要求进行修改。下面我们以安装 Redis 扩展为例。

安装 Redis 扩展

$ wget https://github.com/phpredis/phpredis/archive/master.zip
$ unzip master.zip
$ cd phpredis-master
$ /usr/local/php/bin/phpize
$ ./configure --with-php-config=/usr/local/php/bin/php-config
$ make && make install

将 redis.so 扩展文件复制到 /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226 目录下:

$ cp modules/redis.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226

修改 /usr/local/php/etc/php.ini 文件,在末尾添加:

extension=redis.so

重启 PHP-FPM 服务:

$ /usr/local/php/sbin/php-fpm -s reload

示例二

在上述安装流程中,我们使用的是比较老旧的 CentOS 6.4 系统。如果使用的是更新的 CentOS 7 系统,则需要更改部分安装步骤。下面我们以安装 Nginx 1.19.10 和 PHP 7.4.15 为例。

安装 Nginx

$ wget https://nginx.org/download/nginx-1.19.10.tar.gz
$ tar zxvf nginx-1.19.10.tar.gz
$ cd nginx-1.19.10
$ ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
$ make && make install
$ /usr/local/nginx/sbin/nginx

安装 PHP

$ wget http://php.net/get/php-7.4.15.tar.gz/from/this/mirror -O php-7.4.15.tar.gz
$ tar zxvf php-7.4.15.tar.gz
$ cd php-7.4.15
$ ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-fpm-user=www --with-fpm-group=www --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv --with-freetype --with-jpeg --with-png --with-zlib --with-libxml --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt --with-gd --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-opcache
$ make && make install
$ cp php.ini-development /usr/local/php/etc/php.ini
$ cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
$ vim /usr/local/php/etc/php-fpm.conf
# 修改以下选项:
user = www
group = www
listen = 127.0.0.1:9000
$ /usr/local/php/sbin/php-fpm
$ cd /usr/local/nginx/html
$ vim phpinfo.php
# 写入以下内容:
<?php
phpinfo();
?>

将此时产生的 phpinfo.php 复制到 /usr/local/nginx/html 目录,即可访问页面查看 PHP 配置信息。

以上就是在 CentOS 6.4 系统上,使用源码编译方式安装 Nginx 和 PHP 的具体步骤和注意事项,希望对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Centos6.4 编译安装 nginx php的方法 - Python技术站

(0)
上一篇 2023年5月25日
下一篇 2023年5月25日

相关文章

  • 利用nginx与ffmpeg搭建流媒体服务器过程详解

    下面是一份利用nginx与ffmpeg搭建流媒体服务器的攻略。 准备工作 安装nginx와 ffmpeg 在开始操作之前,应该先安装两个核心软件:nginx和ffmpeg。 要安装nginx和ffmpeg,可以使用以下的命令: 在Linux上的命令行终端中: sudo apt-get update sudo apt-get install nginx ffm…

    人工智能概览 2023年5月25日
    00
  • java使用tess4j进行图片文字识别功能

    以下是使用tess4j进行图片文字识别功能的完整攻略: 简介 Tess4J是基于Tesseract OCR引擎的Java OCR API。它支持OCR引擎的多种语言,并提供了易于使用的API。使用Tess4J可以方便地实现图片文字识别的功能。 步骤 步骤一:引入Tess4J的Jar包 在项目中引入Tess4J的Jar包,可以去官网(https://sourc…

    人工智能概论 2023年5月25日
    00
  • Go语言设计模式之实现观察者模式解决代码臃肿

    接下来我将详细讲解“Go语言设计模式之实现观察者模式解决代码臃肿”的攻略。 什么是观察者模式? 观察者模式是一种软件设计模式,它定义了对象如何聚合以便其他对象可以订阅它们的变化。具体来说,当被观察者对象的某个状态发生变化时,观察者对象会得到通知,并根据相应的通知进行相应的操作。 观察者模式的实现 观察者接口 首先,我们需要定义一个观察者接口,该接口包含一个U…

    人工智能概览 2023年5月25日
    00
  • ChatGPT编程秀之最小元素的设计示例详解

    以下是ChatGPT编程秀之最小元素的设计示例的流程和内容: ChatGPT编程秀之最小元素的设计示例详解 简介 ChatGPT编程秀是一项比赛,旨在让选手通过编写Chatbot并使用GPT模型来自主完成对话任务。在比赛中,最小元素的设计是至关重要的,因为它们是构建完整Chatbot的基础。本文将为大家详细介绍如何设计Chatbot的最小元素,并给出两个具体…

    人工智能概论 2023年5月25日
    00
  • ASP 指南

    ASP指南完整攻略 ASP是一种经典的服务器端动态脚本语言,广泛应用于Web开发中。本指南将帮助你了解ASP的基本知识,并提供ASP的完整攻略,包括ASP的常见技术和实例演示。 ASP基础知识 什么是ASP ASP(Active Server Pages)是一种基于服务器端的动态网页技术,由Microsoft公司提供支持。它能够将动态脚本语言(如VBScri…

    人工智能概论 2023年5月25日
    00
  • 树莓派极简安装OpenCv的方法步骤

    下面是详细讲解“树莓派极简安装 OpenCV 的方法步骤”的完整攻略: 1. 准备工作 首先,需要准备以下物品: 树莓派(建议使用树莓派 3B+ 或者更新版本) SD 卡(建议使用 32GB 及以上容量,使用 Class 10 以上速度的 SD 卡) SD 卡读卡器 电脑 HDMI 显示器(可选) HDMI 线(可选) 2. 安装操作系统 可以使用官方提供的…

    人工智能概览 2023年5月25日
    00
  • Opencv下载和导入Visual studio2022的实现步骤

    首先,我们需要将Opencv库下载到本地并导入Visual Studio 2022开发环境中,具体步骤如下: Step 1:下载Opencv库 可以到Opencv官网(https://opencv.org/)下载最新版本的Opencv库,也可以到github上下载(https://github.com/opencv/opencv/releases)。注意,下…

    人工智能概论 2023年5月25日
    00
  • 在pytorch中对非叶节点的变量计算梯度实例

    在PyTorch中,如果一个变量既不是标量也不是叶子节点,那么默认情况下不会为该变量计算梯度。这种情况下,我们需要显式地告诉PyTorch对该变量进行梯度计算。下面是完整的攻略,包含两条示例说明: 1. 修改require_grad参数 当我们定义一个变量时,可以使用requires_grad参数来告诉PyTorch是否需要为该变量计算梯度。默认情况下,该参…

    人工智能概论 2023年5月25日
    00
合作推广
合作推广
分享本页
返回顶部