为php artisan.php serve设置端口

213

如何为测试服务器设置自定义端口?

通常情况下,当我们运行

php artisan serve

该文件夹被用作:

localhost:8000

我们如何访问一个文件夹,例如:

localhost:8080

我想要在本地主机上访问两个不同的开发网站。


php artisan serve --help 会显示用法和选项。--help 可在每个 Artisan 命令中使用。 - None
11个回答

423

Laravel 5.8 升级到 8.0 及以上版本

只需将其作为参数传递:

php artisan serve --port=8080

您也可以通过以下方式绑定到特定的主机:

php artisan serve --host=0.0.0.0 --port=8080 

或者(适用于 Laravel 6+),您可以通过在 .env 文件中设置 SERVER_PORT 和 SERVER_HOST 来提供默认值。您可能还需要执行 php artisan cache:clear。 (感谢 @mohd-samgan-khan)

如果您想在 端口80 上运行它,您可能需要使用 sudo。


1
有没有任何方法可以将此设置为默认值? - twigg
2
是的,从Laravel 6开始就有了:在您的.env文件中设置SERVER_PORT。https://dev59.com/SlYO5IYBdhLWcg3wDNMa#59823822 - Synchro
@Synchro没错,我已经更新了答案。 - Andreas Bergström
3
这个解决方案同样适用于 Laravel v8。 - Hashan
1
SERVER_PORT,可以工作,但请不要忘记运行cache:clean,因为它直接从环境中读取而不是从缓存中读取。 - Mohd Samgan Khan
显示剩余2条评论

48

就像这个例子一样,您可以更改IP和端口,这对我有效。

php artisan serve --host=0.0.0.0 --port=8000

我正在AWS / EC2上运行测试服务器(而不是在本地)。所以我把这段代码放到终端里,现在已经可以运行了! - Chad

15

可以通过以下命令指定端口:php artisan serve --port=8080


14

每个项目可以同时使用多个端口。

  php artisan serve --port=8000

  php artisan serve --port=8001   

  php artisan serve --port=8002

  php artisan serve --port=8003

我在不同的端口上运行了多个 Laravel 项目。它会出现 404 找不到错误。我需要在其他地方配置端口吗? - Eranda Peiris

6

Andreas上面的回答有助于解决我的问题,即如何在端口80上测试艺术家。端口80可以像其他端口号一样指定,但普通用户没有权限在该端口上运行任何内容。

加入一些常识,对于Linux来说,你就会得到这个:

sudo php artisan serve --port=80

这将允许您在本地主机上进行测试,而无需在浏览器中指定端口。您也可以像我所做的那样使用它来设置临时演示。

请注意,PHP内置的服务器不适用于生产环境。请在生产环境中使用nginx / Apache。

6

您可以使用

php artisan serve --port 80

适用于Windows平台


5

您也可以使用相同的命令添加主机,例如:

php artisan serve --host=172.10.29.100 --port=8080

2
sudo /Applications/XAMPP/xamppfiles/bin/apachectl start

在确保我的端口都被唯一地排序之后,这个解决了我的问题。

最初的回答:


2
当我们使用时
php artisan serve 

默认情况下,它将使用HTTP服务器端口启动,通常为8000。当我们想在本地主机上运行更多的网站时,我们需要更改端口。只需添加--port参数:

php artisan serve --port=8081

enter image description here


1
在CMD中运行此命令以在不同端口上运行Laravel项目。
php artisan serve --port=8080

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接