java - Linux 服务器上的 Recaptcha 连接超时

标签 java linux captcha recaptcha

我正在使用ReCaptcha在我的网站上获取验证码。当我在本地主机服务器上运行它时,它运行正常。但是当我在 Linux 服务器上运行它时,它会给我连接超时消息。我不知道为什么?

我发现很多人都遇到了同样的问题,但没有解决方案有人知道可能是什么问题吗?我正在使用文档中给出的 Java 示例。

这里是 -> https://developers.google.com/recaptcha/docs/java


net.tanesha.recaptcha.ReCaptchaException: Cannot load URL: Connection timed out
    at net.tanesha.recaptcha.http.SimpleHttpLoader.httpPost(SimpleHttpLoader.java:89)

我的 80 端口 iptable 设置是:

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

我尝试 curl

 http://www.google.com/recaptcha/api/verify 
来自网络服务器,但它不允许。我猜主机无法从服务器访问。如何允许从 Linux 服务器向 google api 网站进行 post/get 操作?

最佳答案

1).您的 INPUT 链中的错误:

-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT

这里必须是--sport而不是--dport。因为curl可以使用任何端口来发送新的输出请求,并且将等待该端口上的响应。例如 44254 或任何其他。

2).可能有必要为 443 端口添加类似的规则,因为新版本的 Google RECaptcha 默认使用它。

关于java - Linux 服务器上的 Recaptcha 连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15441451/

相关文章:

php - 关于在 linux mint 上安装curl的问题

java - 检查单选按钮是否选择了特定 Activity

java - tomcat修改密码会影响应用运行吗

linux - 如何使用 Linux shell 脚本自定义 Webconverger 的 ISO 镜像?

linux - 在用户模式下读取 kallsyms

php - PHP 的数字验证码

javascript - Python 请求响应与 Chrome 响应不同

php - 验证码的替代品?

java - 通过同一个 ActiveMQConnectionFactory 使用多个 ActiveMQ 队列

java - 如何在现有键处将唯一值添加到 HashMap