【Ubuntu - php环境配置】

news/2024/10/18 8:31:00/

本文记录在ubuntu环境下,分别安装phpphp-fpm,以及如何在nginx中使用。

php_2">安装php

通过以下步骤来完成:

  1. 打开终端。

  2. 更新系统软件包列表,以确保安装的软件包是最新的:

    sudo apt update
    
  3. 安装PHP及其相关组件。如果你只需要基本的PHP功能,可以安装 php 包,但如果你需要与 MySQL 或 PostgreSQL 等数据库进行交互,你可能还需要安装其他的 PHP 扩展。常用的扩展包括 php-mysql(用于 MySQL)、php-pgsql(用于 PostgreSQL)等。你可以根据自己的需求选择性安装这些扩展。
    如果需要其他的扩展,可以使用类似的命令安装,例如:

    sudo apt install php
    
    sudo apt install php-mysql
    sudo apt install php-pgsql
    
  4. 安装完成后,你可以通过以下命令验证PHP是否已成功安装:
    这将显示已安装的PHP版本信息。

    php -v
    

安装完成后,你就可以开始在Ubuntu上使用PHP了。

phpfpm_35">安装php-fpm

如果在安装PHP时没有安装PHP-FPM,你可以按照以下步骤在Ubuntu上安装PHP-FPM:

  1. 打开终端。

  2. 确保你的系统软件包列表是最新的:

    sudo apt update
    
  3. 安装PHP-FPM:

    sudo apt install php-fpm
    
  4. 安装完成后,你可以使用以下命令来检查PHP-FPM是否已成功安装:

    sudo systemctl php-fpm status
    

    如果PHP-FPM正在运行,命令将显示服务的状态信息。如果没有运行,它将会显示服务停止的信息。

  5. 如果需要启动、停止或重启PHP-FPM服务,可以使用以下命令:

    sudo systemctl php-fpm start   # 启动服务
    sudo systemctl php-fpm stop    # 停止服务
    sudo systemctl php-fpm restart # 重启服务
    

安装完成后,PHP-FPM应该就会在你的系统上正常运行了。

phpfpm_71">安装后,php-fpm在哪里

安装完PHP后,PHP-FPM(PHP FastCGI Process Manager)通常会被安装在系统中,并作为一个系统服务运行。在Ubuntu上,PHP-FPM的配置文件和启动脚本通常位于 /etc/php/{PHP_VERSION}/fpm/ 目录中,其中 {PHP_VERSION} 是你安装的PHP版本号。

你可以在终端中使用以下命令来检查PHP-FPM是否正在运行:

sudo service php{PHP_VERSION}-fpm status

替换 {PHP_VERSION} 为你安装的PHP的实际版本号。

如果PHP-FPM正在运行,命令将显示服务的状态信息,包括运行的进程数量等。如果没有运行,它将会显示服务停止的信息。

要启动或停止PHP-FPM服务,可以使用以下命令:

sudo service php{PHP_VERSION}-fpm start  # 启动服务
sudo service php{PHP_VERSION}-fpm stop   # 停止服务
sudo service php{PHP_VERSION}-fpm restart  # 重启服务

记得将 {PHP_VERSION} 替换为你安装的PHP的实际版本号。

如何在nginx中使用

nginx.conf配置如下

worker_processes  1;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       8000;server_name  localhost;root   ${your_root_path};index index.php index.html index.htm;access_log  /var/nginx/log/access.log;error_log   /var/nginx/log/error.log;location ~* \.(css|js|jpg|jpeg|png|gif|ico|svg)$ {expires max;log_not_found off;}location ~ \.php$ {# 设置fastcgi的请求地址# 方式1:使用unix socket# fastcgi_pass  unix:/tmp/php-cgi.sock; # 方式2: 使用端口,需要在php-fpm的配置文件中设置,# 设置方式为下面问题`如何查看php-fpm监听的端口号` 中listen部分fastcgi_pass 127.0.0.1:9000;# 设置脚本文件请求的路径fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;fastcgi_param SCRIPT_FILENAME scripts$fastcgi_script_name;
$fastcgi_script_name# 引入fastcgi的配置文件include fastcgi_params;}}}

问题记录

phpfpmservice_Unit_phpfpmservice_not_found_147">提示Failed to start php-fpm.service: Unit php-fpm.service not found.

如果在 Ubuntu 上安装 PHP-FPM 后,无法找到 PHP-FPM 服务,可能是由于安装包没有正确配置服务的原因。在这种情况下,你可以手动创建一个服务单元文件来启动 PHP-FPM。以下是一种方法:

  1. 创建 PHP-FPM 服务单元文件
    /etc/systemd/system/ 目录中创建一个新的服务单元文件,命名为 php-fpm.service。可以使用 sudo 权限执行以下命令来创建文件并编辑它:

    sudo nano /etc/systemd/system/php-fpm.service
    

    在文件中输入以下内容:

    [Unit]
    Description=The PHP FastCGI Process Manager
    After=network.target[Service]
    Type=simple
    ExecStart=/usr/sbin/php-fpm7.4 --nodaemonize --fpm-config /etc/php/7.4/fpm/php-fpm.conf
    ExecReload=/bin/kill -USR2 $MAINPID
    PrivateTmp=true[Install]
    WantedBy=multi-user.target
    

    注意:这个示例假设你安装的是 PHP 7.4 版本。如果你安装的是其他版本,例如 PHP 8.0,则需要相应地更改 php-fpm7.4/etc/php/7.4/fpm/php-fpm.conf 的路径。

  2. 保存并退出
    在 Nano 编辑器中,按下 Ctrl + O 保存文件,然后按下 Enter 确认保存。然后按下 Ctrl + X 退出编辑器。

  3. 重新加载 systemd 管理的服务
    执行以下命令以重新加载 systemd 管理的服务单元文件:

    sudo systemctl daemon-reload
    
  4. 启动 PHP-FPM 服务
    现在可以启动 PHP-FPM 服务了:

    sudo systemctl start php-fpm
    
  5. 检查服务状态
    检查 PHP-FPM 服务是否已成功启动:

    sudo systemctl status php-fpm
    

这样,你就手动创建了一个 PHP-FPM 服务单元文件,并启动了 PHP-FPM 服务。

phpfpm_203">如何查看php-fpm监听的端口号

要查看 PHP-FPM 监听的端口号,你需要查看 PHP-FPM 的配置文件。默认情况下,PHP-FPM 的配置文件通常位于 /etc/php/{PHP_VERSION}/fpm/pool.d/www.conf,其中 {PHP_VERSION} 是你安装的 PHP 的版本号。

你可以通过以下步骤来查看 PHP-FPM 监听的端口号:

  1. 打开终端。

  2. 使用文本编辑器(如 nano 或 vim)打开 PHP-FPM 的配置文件。例如:

    sudo nano /etc/php/7.4/fpm/pool.d/www.conf
    

    请确保将路径替换为你实际的 PHP 版本号。

  3. 在打开的配置文件中,查找 listen 指令。这是 PHP-FPM 监听的地址和端口。通常,它看起来像这样:

    listen = 127.0.0.1:9000
    

    这表示 PHP-FPM 在本地监听端口 9000。端口号可能会因为个人配置而有所不同。

  4. 记下 listen 指令中的端口号。这就是 PHP-FPM 监听的端口。

一旦你找到了 PHP-FPM 监听的端口号,你就可以使用该端口号配置 Web 服务器或其他服务来与 PHP-FPM 进行通信。


http://www.ppmy.cn/news/1432267.html

相关文章

人工智能培训老师叶梓:如何通过Prompt优化提升GPT-4性能

在人工智能领域,尤其是自然语言处理(NLP)中,Prompt工程是一种通过精心设计的提示(prompt)来引导模型生成期望输出的技术。最近,微软的研究团队通过Prompt优化策略,在医疗领域取得了显…

【LeetCode热题100】【贪心算法】划分字母区间

题目链接:763. 划分字母区间 - 力扣(LeetCode) 要将一个字符串划分为多个子串,要求每个字母只能出现在一个子串里面 如果一个字母的当前位置是它在这个字符串里面最后一次出现的位置,那么这里就应该划分出来成为子串…

ASGI Server之hypercorn

官方文档 简介 产生背景 Hypercorn最初是Quart(一款异步python微框架)的一部分,后来被分离成一个独立的ASGI服务器。Hypercorn从Quart的0.5.0版本分叉。 结构 Hypercorn是一款基于sans-io hyper、h11、h2和wsproto库的ASGI网络服务器,其灵感来自Gun…

Spring Boot定义类处理API通用返回数据

枚举类AppHttpCodeEnum package com.yutu.common.core.constant;public enum AppHttpCodeEnum {SUCCESS(200, "操作成功"), // 成功段0REQUEST_NOT_FOUND(404, "请求不存在!"),HTTP_BAD_METHOD(405, "请求方式不支持!"),…

类和对象(2)——封装(封装的概念、包、staic)

前言 面向对象程序三大特性:封装、继承、多态。而类和对象阶段,主要研究的就是封装特性。何为封装呢?简单来说就是套壳屏蔽细节。 一、什么是封装 1.1 概念 将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节&…

成长工作思考

前言 这一篇,不是技术博客,而是个人发展的一些思考和总结,复盘才会做的更好,成长的道路当然不是随着时间推移 开场白 不劳而获的是时间,完全免费的,但是免费的同时也是最贵的。向前看仿佛时间悠悠无边&a…

SLICEM是如何将查找表配置为分布式RAM/移位寄存器的

1.首先说SliceM和SliceL如何配置为ROM的 一个SLICE包含4个六输入查找表,因此每个查找表就能存储64bit的数据,要实现128bit的ROM,只需要通过两个LUT就可实现,具体如下表: 2.如何配置成为分布式RAM SLICEM中的LUT如下图&#xff…

力扣:141. 环形链表

力扣:141. 环形链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾…