温馨提示×

Ubuntu怎么配置PHP端口

小樊
42
2026-07-28 04:32:19
栏目: 编程语言

在 Ubuntu 上配置 PHP 端口,通常取决于你是通过 PHP-FPM 还是 PHP 内置服务器 运行。下面按常见场景说明。


一、PHP-FPM 方式(最常见,配合 Nginx / Apache)

PHP-FPM 本身会监听一个端口或 socket,Nginx/Apache 再转发请求给它。

1. 查看 PHP-FPM 配置

PHP-FPM 的配置文件一般在:

/etc/php/{版本}/fpm/pool.d/www.conf

例如 PHP 8.1:

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

2. 修改监听端口

找到这一行:

listen = /run/php/php8.1-fpm.sock

改为端口方式(例如 9000):

listen = 127.0.0.1:9000

✅ 推荐端口:

  • 9000(默认)
  • 90019002(多版本共存时)

3. 重启 PHP-FPM

sudo systemctl restart php8.1-fpm

4. Nginx 对应配置

如果 Nginx 使用 PHP-FPM,需要同步修改:

location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000;
    include fastcgi_params;
}

然后重启 Nginx:

sudo systemctl restart nginx

二、PHP 内置服务器(开发环境)

PHP 自带一个简易 Web 服务器,可指定端口:

php -S 0.0.0.0:8080

或指定目录:

php -S 0.0.0.0:8080 -t /var/www/html

✅ 常用端口:

  • 8080
  • 8000

⚠️ 不建议用于生产环境。


三、多 PHP 版本使用不同端口(进阶)

例如:

  • PHP 8.1 → 9000
  • PHP 7.4 → 9001

分别修改:

/etc/php/8.1/fpm/pool.d/www.conf
/etc/php/7.4/fpm/pool.d/www.conf

然后 Nginx 中:

fastcgi_pass 127.0.0.1:9000;
fastcgi_pass 127.0.0.1:9001;

四、检查端口是否生效

ss -lntp | grep php

或:

netstat -lntp | grep php

五、常见问题

❌ 端口被占用

sudo lsof -i :9000

❌ Nginx 连不上 PHP-FPM

  • 防火墙未放行(本地一般不用)
  • listenfastcgi_pass 不一致
  • PHP-FPM 没启动

如果你愿意,可以告诉我:

  • ✅ 用的是 Nginx 还是 Apache
  • ✅ PHP 版本
  • ✅ 是 开发环境还是生产环境

我可以给你一份精确可用的配置示例

0