c9.io 停止 apache 以释放空间 process.env.PORT

c9.io stop apache to free up process.env.PORT

我试图在 c9.io 网络服务器虚拟机上 运行 节点和 Apache。我使用了 c9.io phyMyAdmin 安装 script,它配置本地 MySQL 实例,安装然后重新启动 apache。可以在 https://workspaceName-workspaceOwner.c9.io/phpMyAdmin 访问 phpMyAdmin,但是,我现在无法从 运行 停止 apache,占用 c9 分配的 env.PORT。

根请求的响应:

节点运行时:

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error: listen EADDRINUSE

我停止 apache 进程的尝试:

从工具 -> 进程列表 -> 搜索 apache 并强制终止 - 无效

来自终端:

/etc/init.d/apache2 stop
  • no effect
apachectl stop

httpd (pid 20190?) not running

service apache2 stop
  • Stopping web server apache2 * No effect, web server response and process still exists
ps au | grep apache

ubuntu 22910 0.0 0.0 10552 880 pts/3 S+ 06:30 0:00 grep --color=auto apache

kill -9 22910

bash: kill: (22910) - No such process

kill -9 `ps au | grep apache | awk '{print }'`

bash: kill: (22926) - No such process

killall apache2

apache2(20190): Operation not permitted

因为 c9.io 不给 su 访问 VM 或允许我们重新启动 VM 是否有人有任何其他可能的方法来解决这个问题?我还想在 运行ning 节点和 apache 之间快速切换(因为两者都不可能)以使用 phpMyAdmin,因为我无法连接 MySQL Workbench。感谢任何帮助或建议。

您可以通过在终端中键入 sudo killall -9 apache2 来终止 apache2 进程。此外,在 Cloud9 上,apachectl startapachectl stop 是 start/stop apache 服务器的唯一推荐方式。

顺便说一句,您可以通过单击右侧的统计菜单项并单击下拉列表中的 'Restart' 按钮来重新启动您的工作区。这对你不起作用吗?

要在两者之间切换,您可能可以制作一个 shell 脚本来执行此操作,但另一个想法可能是使用 apache 作为节点应用程序的代理。我自己还没有尝试过,但也许以下内容会有所帮助:

http://thatextramile.be/blog/2012/01/hosting-a-node-js-site-through-apache

希望对您有所帮助