您现在的位置是:娱乐 >>正文

php 端口

娱乐25452人已围观

简介```html php 端口 你写了个 PHP 脚本,用 php -S localhost:8000 跑起来,浏览器里一敲 localhost:8000,页面出来了。这 8000 就是端口 ...

```html php 端口

你写了个 PHP 脚本,用 php -S localhost:8000 跑起来,浏览器里一敲 localhost:8000,页面出来了。这 8000 就是端口。PHP 本身不绑定端口,它是个解释器,跑完脚本就退出。真正监听端口的是 Web 服务器,比如 Nginx、Apache,或者 PHP 自带的那个开发服务器。

我刚开始学 PHP 那会儿,以为 PHP 跟端口有啥神秘关系。后来才明白,PHP-FPM 才跟端口沾边。PHP-FPM 是个进程管理器,它监听一个端口或者 Unix socket,等 Nginx 把请求转发过来。Nginx 收到 example.com/index.php 的请求,一看是 .php 结尾,就通过 FastCGI 协议把请求丢给 PHP-FPM。PHP-FPM 处理完,把结果返回给 Nginx,Nginx 再吐给浏览器。

那 PHP-FPM 监听哪个端口?默认是 9000。你装完 PHP-FPM,配置文件里通常写着 listen = 127.0.0.1:9000。Nginx 那边对应写 fastcgi_pass 127.0.0.1:9000;。两边一对上,请求就能跑通。我见过有人把 PHP-FPM 的监听端口改成 9001,结果 Nginx 没改,页面直接 502。查了半天,最后发现是端口不一致。这种坑,新手踩一次就记住了。

为什么用 9000?没什么特别原因,约定俗成。就像 MySQL 用 3306,Redis 用 6379。你非要改成 12345 也行,只要 Nginx 和 PHP-FPM 两边商量好。但生产环境里,大家习惯用 Unix socket 而不是 TCP 端口。Unix socket 不走网络协议栈,性能好一点,而且不用占端口号。配置长这样:listen = /run/php/php8.2-fpm.sock。Nginx 那边写 fastcgi_pass unix:/run/php/php8.2-fpm.sock;。文件路径对上就行。

有人问,那我直接让 PHP 监听 80 端口行不行?行,但没必要。PHP 内置服务器可以 php -S 0.0.0.0:80,但它是个单进程玩具,并发一高就崩。生产环境没人这么干。Apache 的 mod_php 模式倒是让 PHP 跑在 Apache 进程里,Apache 监听 80,PHP 跟着沾光。但 mod_php 现在不流行了,PHP-FPM 加 Nginx 才是主流。

还有一种情况:你写命令行脚本,比如 php artisan serve,它底层也是 php -S,默认监听 8000。Laravel 开发者天天见。有时候 8000 被占用了,报错 Failed to listen on 127.0.0.1:8000。换个端口就行:php artisan serve --port=8080。简单粗暴。

端口冲突这事,PHP 开发者躲不开。你本地跑着 MySQL 3306,又装了个 MariaDB,它也默认 3306,启动就报错。PHP 本身不抢端口,但跟它配合的服务抢。我习惯用 netstat -tulpn | grep 9000 看看谁占了 9000。如果是旧的 PHP-FPM 没关干净,kill 掉再重启。如果是别的服务,改配置换端口。

安全方面,PHP-FPM 监听 TCP 端口时,别绑 0.0.0.0:9000。那等于把 FastCGI 接口暴露给整个网络。有人扫描 9000 端口,构造恶意 FastCGI 请求,能执行任意代码。绑 127.0.0.1 或者用 Unix socket 才安全。我见过一台服务器被挖矿,查到最后就是 PHP-FPM 监听了公网 IP 的 9000 端口。教训。

最后说个冷门的:PHP 的 fsockopen 和 stream_socket_client 可以主动连接别的端口。你写个脚本去连 tcp://127.0.0.1:3306,能连上就说明 MySQL 活着。这种端口探测在运维脚本里常见。PHP 干这事挺顺手,几行代码搞定。

所以“PHP 端口”这词,拆开看:PHP 是语言,端口是网络通信的入口。两者通过 FastCGI 或者内置服务器产生交集。理解这个,配置 Nginx 和 PHP-FPM 时就不会晕。下次看到 9000、8000、80 这些数字,心里清楚谁在监听,谁在转发,谁在干活。

```

Tags:

相关文章

  • 老李篮球之家

    娱乐

    老李的篮球之家,其实就是个废弃厂房改的球馆,在城南老工业区深处。导航在这儿基本失灵,得靠路边那棵歪脖子梧桐树认路。我第一次去,绕着厂房转了二十分钟,最后是循着篮球砸地的闷响才找到入口。 掀开锈迹斑斑的 ...

    【娱乐】

    阅读更多
  • 昆明网站制作公司

    娱乐

    昆明做网站的公司,少说有两三百家。这个数字不是瞎猜的,是从工商注册信息和本地招聘网站的数据里扒出来的。但真正能活过三年的,不到三成。我认识一个在莲花池畔开工作室的哥们,2019年入行,去年把公司关了, ...

    【娱乐】

    阅读更多
  • 安全漏洞视频

    娱乐

    凌晨两点,李工被手机震动吵醒。值班同事发来一段监控视频:一个穿外卖服的人,在机房门口蹲了整整四十分钟。没人拦他,也没人问。视频最后十秒,他掏出一台巴掌大的设备,插进交换机端口,三分钟后拔掉走人。整个过 ...

    【娱乐】

    阅读更多


友情链接