php - PHP开发服务器在启动时冻结
问题描述
嗨,我开始学习 PHP,第一步是运行开发服务器开始练习,我使用的行是:
php -S localhost:4000
但它只是冻结了,我得到了这条线:
PHP 8.0.7 Development Server (http://localhost:4000) started
在等待了很长时间后,我得到了这个:
[Tue Jun 15 08:25:08 2021] PHP 8.0.7 Development Server (http://localhost:4000) started
[Tue Jun 15 08:50:15 2021] [::1]:62470 Accepted
[Tue Jun 15 08:50:15 2021] [::1]:62471 Accepted
[Tue Jun 15 08:50:16 2021] [::1]:62470 [404]: (null) / - No such file or directory
[Tue Jun 15 08:50:16 2021] [::1]:62470 Closing
[Tue Jun 15 08:50:18 2021] [::1]:62471 Closed without sending a request; it was probably just an unused speculative preconnection
[Tue Jun 15 08:50:18 2021] [::1]:62471 Closing
你能帮我弄清楚发生了什么吗?
解决方案
服务器没有“冻结”,它正在做它的工作,等待请求并提供响应。在 Web 浏览器中转到 http://localhost:4000 以向其请求某些内容。
具体来说,由于您没有指定要运行的 PHP 脚本,它正在等待您请求特定文件 - 如果您有一个名为“index.php”的文件,您可以转到“http://localhost:4000” /index.php”,如果它被称为“arnoldo-rocks.php”,请转到“http://localhost:4000/arnoldo-rocks.php”,依此类推。
它会继续这样做,直到你用 Ctrl-C 杀死它
如果你想在运行其他命令的同时在后台运行它,并且使用 Linux/Unix shell(不是 CMD 或 PowerShell),你可以这样运行它:
php -S localhost:4000 &
这将启动它并立即“将其置于后台”;要杀死它,您需要运行fg
(“将最近的后台进程置于前台”),然后键入 Ctrl-C
推荐阅读
- java - 引用线程中的对象时的NPE?
- regex - RegEx 或 PowerShell 按顺序删除重复字符
- c# - XML 文件转换为 C# 对象
- configuration - Software AG:如何使本地集成服务器可访问?
- python - 从读取文件行中查找集合中的元素
- python - 当我在 python3 中使用 readline 函数时,无法将变量存储到新变量中
- mongodb - 我无法通过使用纬度和经度来获取记录,使用 Mongodb
- c# - 使用 OpenCV 连续捕获桌面循环
- nuget - TeamCity 在应该发布 4 时仅将 1 个包发布到 NuGet 提要
- c# - 如何让安装程序注册一个 IE 插件