CentOS7服务器上.NET Core Web API返回404错误排查求助
排查CentOS7上.NET Core Web API Apache反向代理404错误的补充检查项
确认.NET Core API服务状态
- 用
ps aux | grep dotnet查看API进程是否存在;若使用systemd托管,执行systemctl status <你的API服务名>检查运行状态 - 若服务未启动,执行
systemctl start <你的API服务名>启动,再用systemctl enable <你的API服务名>设置开机自启
- 用
验证API端口的可用性
- 在服务器本地执行
curl http://localhost:<actual_api_port>/<你的API端点>,确认API自身能正常响应 - 检查防火墙:执行
firewall-cmd --list-ports确认<actual_api_port>已开放,未开放则执行firewall-cmd --add-port=<actual_api_port>/tcp --permanent,再重载规则firewall-cmd --reload - 排查SELinux限制:临时关闭测试
setenforce 0,若恢复正常,执行semanage port -a -t http_port_t -p tcp <actual_api_port>永久允许该端口
- 在服务器本地执行
确认Apache代理模块已启用
- 执行
a2enmod proxy proxy_http启用必要的代理模块,若需要处理HTML内容可额外启用proxy_html - 重启Apache生效:
systemctl restart httpd
- 执行
检查日志定位问题
- 查看Apache错误日志:
cat /var/log/apache2/teapiocaapi_error_log,排查代理转发时的错误 - 查看.NET Core API日志:若用systemd托管,执行
journalctl -u <你的API服务名> -f实时查看应用日志;或直接查看应用目录下的日志文件
- 查看Apache错误日志:
验证虚拟主机配置有效性
- 检查Apache配置语法:
apachectl configtest,修复报错后重启Apache - 确认虚拟主机文件已被正确加载:检查Apache主配置文件中是否包含了Post VirtualHost Include的路径配置
- 检查Apache配置语法:
核对API路由配置
- 确认API控制器的路由属性(如
[Route("api/[controller]")])是否正确,访问的URL是否与路由规则匹配 - 检查是否存在默认路由,或是否需要指定具体的端点路径才能访问
- 确认API控制器的路由属性(如
内容的提问来源于stack exchange,提问作者Siva
相关产品推荐
相关产品推荐

