9

たとえば、301リダイレクトなどのHTTPリターンコードを簡単にテストするにはどうすればよいでしょうか。

たとえば、「何が起こっているのかを確認」したい場合は、telnetを使用して次のようなことを行うことができます。

... $ telnet nytimes.com 80

Trying 199.239.136.200...
Connected to nytimes.com.
Escape character is '^]'.

GET / HTTP / 1.0

(入力)

(入力)

HTTP/1.1 200 OK
Server: Sun-ONE-Web-Server/6.1
Date: Mon, 14 Jun 2010 12:18:04 GMT
Content-type: text/html
Set-cookie: RMID=007af83f42dd4c161dfcce7d; expires=Tuesday, 14-Jun-2011 12:18:04 GMT; path=/; domain=.nytimes.com
Set-cookie: adxcs=-; path=/; domain=.nytimes.com
Set-cookie: adxcs=-; path=/; domain=.nytimes.com
Set-cookie: adxcs=-; path=/; domain=.nytimes.com
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Cache-control: no-cache
Pragma: no-cache
Connection: close

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>    
<head>      
...

これは、かなりの情報にアクセスする簡単な方法です。

しかし、ここで、301リダイレクトが実際に301リダイレクトであることをテストしたいと思います。

どうすればいいですか?

基本的に、HTTP / 1.1 200 OKを取得する代わりに、301を取得する方法を知りたいですか?

ブラウザにURLの名前を入力して、リダイレクトされていることを「確認」できることは知っていますが、実際に301リダイレクトを「確認」するために使用できるツールを知りたいです。

ところで、私はtelnetでテストしましたが、example.orgにリダイレクトしたwww.example.orgに入ると(wwwなしで)、表示されるのは「200 OK」だけで、表示されません。 301。

4

6 に答える 6

19

私の意見では、はるかに便利なソリューションは Curl を使用することです。

実行するだけです:

$ curl -I http://example.com

そして、このようなHTTPヘッダーを返します

HTTP/1.1 302 Moved Temporarily
Server: nginx/1.1.19
Date: Sun, 21 Jul 2013 10:41:47 GMT
Content-Type: text/html
Content-Length: 161
Connection: keep-alive
Location: https://other.example.com/
于 2013-07-21T10:44:42.577 に答える
2

OK、質問に答えてから 2 分後に答えが見つかりました...

以下を実行しても機能しません。

telnet www.example.org 80
GET / HTTP/1.0
{enter}
{enter}

しかし、以下はうまくいきます:

telnet example.org 80
GET / HTTP/1.0
Host: www.example.org
{enter}
{enter}

私のエラーは、www.example.orgを( example.orgではなく) telnetに渡し、 "Host: "を指定しなかったことです。

これで動作します。次のようになります。

Connected to xxx.xx
Escape character is '^]'.
GET / HTTP/1.0
Host: www.example.org

HTTP/1.1 301 Moved Permanently
Server: Apache-Coyote/1.1
Location: http://example.org/
Connection: close
Date: Mon, 14 Jun 2010 13:02:22 GMT
Connection: close

Connection closed by foreign host.

注: Windows Vista/7 では、Telnet クライアントはデフォルトではインストールされません。インストールするには、次の手順に従ってください: Telnet クライアントのインストール - Microsoft TechNet

于 2010-06-14T13:04:33.617 に答える
1

FirefoxアドオンのHTTPLiveヘッダーはそのために非常に便利です。

于 2010-06-14T13:01:00.607 に答える
1

(telnet 応答の) ヘッダーの最初の行に表示されます。

HTTP/1.1 301 Moved Permanently
Via: XXXXXXXXXXX
Connection: close
Proxy-Connection: close
Content-Length: 0
Date: Mon, 14 Jun 2010 13:03:14 GMT
Location: /xxxxxxxxx
Server: XXXXXXX
Cache-Control: private

ありがとう

于 2010-06-14T13:04:39.920 に答える
1

これにはFirebugNetパネルを使用します。

代替テキスト

于 2010-06-14T13:04:54.423 に答える