tomcat 错误:Access Error: 404 -- Not Found Cannot locate document: /

本文详细介绍了当8080端口被占用时的两种解决方案,一是通过任务管理器停止占用该端口的进程,二是修改Tomcat的server.xml文件中的端口号为8081,以避免端口冲突。

原因是8080端口被占用(可能是其他软件,比如NI公司软件,电子专业童鞋一般都装有这类软件)

解决方法1:

When I had an error Access Error: 404 -- Not Found I fixed it by doing the following:

Open command prompt and type "netstat -aon" (without the quotes)
Search for port 8080 and look at its PID number/code.
Open Task Manager (CTRL+ALT+DELETE), go to Services tab, and find the service with the exact PID number. Then right click it and stop the process.

由于我没有在netstat -aon中找到8080 port,所以选择方法2:

解决方法2:

记事本打开tomcat安装文件的conf中server.xml,将

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

中的8080改为8081,保存,重新启动bin目录下shutdown 然后statup,在地址栏输入http://localhost:8081/

在使用SFTP连接服务器时,如果遇到错误提示`/usr/libexec/sftp-server not found`以及`Received unexpected end-of-file from server`,这通常表明服务器端的SFTP子系统配置存在问题,或者相关的可执行文件缺失。 SFTP(SSH File Transfer Protocol)是通过SSH协议进行文件传输的一种方式。它依赖于SSH守护进程(sshd)来启动sftp-server程序。如果系统中缺少该程序,或者sshd配置中指定的SFTP子系统路径不正确,就会导致此类错误。 ### 可能的原因及解决方法: 1. **sftp-server程序缺失** SFTP子系统依赖于`/usr/libexec/openssh/sftp-server`或类似路径中的程序。如果该文件不存在,SFTP连接将无法正常建立。 可以通过以下命令检查该文件是否存在: ```bash file /usr/libexec/openssh/sftp-server ``` 如果返回`No such file or directory`,则说明该文件确实缺失[^1]。可以通过重新安装OpenSSH服务器包来修复这个问题: ```bash yum reinstall openssh-server ``` 或者在基于Debian的系统上使用: ```bash apt-get install --reinstall openssh-server ``` 2. **sshd_config配置错误** SSH守护进程的配置文件`/etc/ssh/sshd_config`中通常包含以下行来指定SFTP子系统的路径: ``` Subsystem sftp /usr/libexec/openssh/sftp-server ``` 如果该路径不正确或拼写错误,SFTP连接将失败。可以使用`locate`命令查找正确的sftp-server路径: ```bash locate sftp-server ``` 通常会显示如下结果: ``` /usr/libexec/openssh/sftp-server /usr/share/man/man8/sftp-server.8.gz ``` 确保`sshd_config`中的`Subsystem`指令指向正确的路径[^2]。修改配置后,需要重新加载SSH服务: ```bash systemctl reload sshd ``` 3. **权限问题或服务异常** 如果`sshd`服务未正常运行,也可能导致SFTP连接失败。可以使用以下命令检查`sshd`服务状态: ```bash systemctl status sshd ``` 如果服务未运行,可以尝试启动它: ```bash systemctl start sshd ``` 4. **用户权限配置问题** 如果用户被配置为仅允许SFTP访问(例如使用`ChrootDirectory`限制用户在特定目录中),但相关目录权限设置不正确,也可能导致连接失败。确保用户具有适当的权限,并且`ChrootDirectory`配置的目录所有权和权限符合要求。 5. **日志排查** 查看`/var/log/secure`或`/var/log/auth.log`(取决于系统)以获取更详细的错误信息: ```bash tail -f /var/log/secure ``` 这些日志可以帮助识别连接失败的具体原因,例如权限问题、路径错误或认证失败等。 ### 总结 解决此类SFTP连接问题的关键在于验证`/usr/libexec/openssh/sftp-server`是否存在、`sshd_config`中子系统路径是否正确、以及`sshd`服务是否正常运行。若文件缺失,可通过重新安装OpenSSH服务器包来修复。若路径配置错误,则需修正配置并重载服务。此外,检查用户权限和系统日志也是排查问题的重要步骤。
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值