猿问

Go Revel 框架端口 9000 已在使用中

在运行测试应用程序之前,我一直很好地遵循Go Revel 框架:


$ revel run myapp


这给了我所有正确的输出,但也给出了以下错误:


ERROR 2013/09/30 19:51:41 harness.go:167: Failed to start reverse proxy: listen tcp 

<nil>:9000: address already in use

当我运行这个:


$ sudo lsof -n -i4TCP:9000 | grep LISTEN


我明白了:


COMMAND   PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME

php-fpm 11007 root   11u  IPv4 0xffffff801441dde0      0t0  TCP localhost:cslistener (LISTEN)

php-fpm 11008 _www    0u  IPv4 0xffffff801441dde0      0t0  TCP localhost:cslistener (LISTEN)

php-fpm 11009 _www    0u  IPv4 0xffffff801441dde0      0t0  TCP localhost:cslistener (LISTEN)

php-fpm 11010 _www    0u  IPv4 0xffffff801441dde0      0t0  TCP localhost:cslistener (LISTEN)

我有一个在端口 80 上运行的 PHP-NGINX 应用程序,不想丢失它,但不知道这是否意味着这个 PHP 应用程序阻止了我的 Go 应用程序运行。


任何人都可以插话吗?


我在 MacOS X 10.7.5 上运行。


九州编程
浏览 182回答 3
3回答

慕田峪7331174

您可以使用以下任一方式更改 Revel 应用程序的端口:编辑config/app.conf文件和设置http.port&nbsp;=&nbsp;8888使用指定端口的参数运行您的狂欢应用程序。您还需要指定dev或prod说明您的环境:revel&nbsp;run&nbsp;myapp&nbsp;dev&nbsp;8888

茅侃侃

建议使用 lsof 检查进程是否已在此端口上运行:lsof&nbsp;-i&nbsp;:9000有时,您会看到系统上未安装 lsof,然后首先安装 lsof:sudo&nbsp;apt-get&nbsp;install&nbsp;lsof如果在此端口上运行相同的应用程序,您应该终止进程并重新启动:kill&nbsp;-9&nbsp;PORT如果此端口上正在运行其他进程,则您应该按照@Vanessa 的建议更改默认端口

MM们

您也可以尝试运行ps&nbsp;-A&nbsp;|&nbsp;grep&nbsp;revel您的 Revel 应用程序可能仍在运行。如果是,你可以用kill&nbsp;PID
随时随地看视频慕课网APP

相关分类

Go
我要回答