![访问 EC2 上服务器的输出](https://linux22.com/image/8079/%E8%AE%BF%E9%97%AE%20EC2%20%E4%B8%8A%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%9A%84%E8%BE%93%E5%87%BA.png)
我刚刚受聘负责一家公司现有网站的工作,该网站在 EC2 上运行。
他们给了我适当的进入凭证ssh
,我成功地进入了。
我发现网页是通过 JavaScript 任务运行程序提供的咕噜声。据推测,其他人启动了一个为页面提供服务的终端进程。
我想访问该终端的输出以开始调试页面的服务方式,并能够访问在那里输出的调试行。有办法做到这一点吗?
答案1
网络服务器极不可能也是具有基于终端的接口的程序。它可能根本不与用户交互,而是写入其标准输出或标准错误如果它被设计为大型基础设施中的组件,或者如果它打算单独用作网络服务器,则将日志条目直接发送到系统日志。如果程序正在写入标准流,那么启动它的正常方法是重定向它的输出流到一个文件。
所以不要寻找终端。查找日志文件。日志文件的位置取决于程序和系统的配置方式。
您可以运行ls -l /proc/1234/fd
其中 1234 是进程 ID 来查看该进程打开了哪些文件。如果您看到文件,请查看那里。如果您看到/dev/log
或其他一些套接字,则意味着该程序正在记录到系统日志中。系统日志位于其中/var/log
,查看程序记录到哪个文件的最简单方法是使其发出日志消息并查看哪个文件的修改时间已更新。