美文网首页
【Ubuntu - php环境配置】

【Ubuntu - php环境配置】

作者: wn777 | 来源:发表于2024-04-16 00:09 被阅读0次

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

    安装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了。

    安装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应该就会在你的系统上正常运行了。

    安装后,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;
            }
        }
    
    }
    
    

    问题记录

    提示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 服务。

    如何查看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 进行通信。

    相关文章

      网友评论

          本文标题:【Ubuntu - php环境配置】

          本文链接:https://www.haomeiwen.com/subject/qtkjxjtx.html