java - HTTPClient 给 404 没有 www 的 url

标签 java apache httpclient

我正在使用 apache HTTPClient 4.2。我使用下面的代码来获取 HTTP 状态代码。它给了我 404

DefaultHttpClient client = new DefaultHttpClient();
        HttpContext context = new BasicHttpContext();
        HttpUriRequest method = new HttpGet("http://michaelkimsal.com/blog/hosted-solr-or-lucene-service/comment-page-1/#comment-604253");
        try {
            HttpResponse httpResponse = client.execute(method,context);
            int status = httpResponse.getStatusLine().getStatusCode();
            System.out.println("The status is:"+status);
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }

但是如果将网址更改为此(我已将 www 添加到网址),http://www.michaelkimsal.com/blog/hosted-solr-or-lucene-service/comment-page-1/#comment-604253 它给了我 200。这种行为的原因可能是什么?请有人帮助解决这个问题。

最佳答案

http://michaelkimsal.com在您的情况下不是有效的域,浏览器在某些情况下是智能的,可以自动处理这种情况,您应该使用带有 www 的正确域。

编辑 请查看this serverault 和 wiki 的链接

它适用于谷歌,因为它已经为此完成了 DNS 解析设置。您还可以设置别名

关于java - HTTPClient 给 404 没有 www 的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11877393/

相关文章:

java - HttpClient内存管理

python - 如何在单个 apache 服务上设置多个 django 版本?

apache - 无法在 OS X Mavericks 上启动 httpd

android - WebView 和 HTTPClient 之间共享 Cookies?

java - 使用 FlowLayout 或 BorderLayout 居中组件(并在调整大小后保持居中)

php - 确定某人是否使用 Nginx、Apache 或 Lighttpd

java - 可调用接口(interface)循环停止主要方法进一步执行

java - 无法实例化 itextpdf 的类型列表

java - 为什么初始化数组后我无法在数组中分配某些值?

java - 使用与 xml 适配器一起使用的自定义类型编码空值