タグ

HTTPに関するakatakunのブックマーク (17)

  • Stale-While-Revalidate ヘッダによるブラウザキャッシュの非同期更新 | blog.jxck.io

    Intro システムにおいてキャッシュの設計は永遠の課題であり、Web のパフォーマンスにおいても非常に重要である。 Web では、HTTP ヘッダを用いてブラウザやプロキシにキャッシュの制御を指定する。 Stale-While-Revalidate ヘッダは、このキャッシュ制御に選択肢を追加する新しい仕様である。 このヘッダの概要と、サイトへの適用を解説する。 Web におけるキャッシュ キャッシュの種類 まず、ブラウザが持つ従来のキャッシュの機構について整理する。 そもそも、キャッシュを行う意義は大きく二つある。 リソースの取得を高速化する サーバへの負荷を減らす これまでは HTTP ヘッダを用いて、キャッシュを管理させる方法を用いてきた。 Web における、キャッシュの指定には大きく二つの方式がある。 ブラウザはリクエストを発行せず、保持するキャッシュを使用する(Cache-Co

    Stale-While-Revalidate ヘッダによるブラウザキャッシュの非同期更新 | blog.jxck.io
  • 「パスワードの送信にURLクエリパラメータを使ってはいけない」のは何故か?

    HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。 HTTPS(Hypertext Transfer Protocol Secure)はHypertext Transfer プロトコルとSSL/TLS プロトコルを組み合わせたものです。WebサーバとWebブラウザの間の通信を暗号化させて、通信経路上での盗聴や第三者によるなりすましを防止します。

    「パスワードの送信にURLクエリパラメータを使ってはいけない」のは何故か?
    akatakun
    akatakun 2019/06/26
    気になってたけど、ログに残ることとやショルダーハッキング以外はやっぱりないのかな
  • HTTPS通信時のURLは暗号化されるか - うまいぼうぶろぐ

    2018/06 追記 古い記事ですがちょこちょこアクセスいただいているので更新。 最近は常時SSL、IPv4枯渇、CDN導入などの理由でSNIが良く使われるようになってきていますが この場合、ホスト名(URL全体ではない)は平文で送信されます。 client 側でキャプチャしたパケット curl -k https://sni.example.com/hogehoge $ sudo ngrep -d en3 -q -W byline port 443 and host 192.0.2.1 interface: en3 (192.168.6.0/255.255.255.0) filter: (ip or ip6) and ( port 443 and host 192.0.2.1 ) T 192.168.6.108:55460 -> 192.0.2.1:443 [AP] ...........

    HTTPS通信時のURLは暗号化されるか - うまいぼうぶろぐ
    akatakun
    akatakun 2019/06/26
    HTTPS通信中のURL情報は暗号化される,盗聴されてもURLはばれない,web serverのログにはURLは復号されて記録される,ログを残すかは設定次第
  • HTTPメソッドGetで個人情報送ってもいいんじゃないの? - Qiita

    タイトルの内容を思ったきっかけは社内勉強会で体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践を読んだことでした 改めてなぜダメなのかと言われるとしっかり根拠を持って説明できないなと思い調べてみました Getでもいいのかなと思ったパターンは以下のようなケースです 例えば、会員登録機能などで確認画面から戻るボタンで入力フォームに遷移する場合に、入力した内容をそのまま保持したままにしたい。その際にはHTTPSの場合であればGetで戻っても大丈夫なのかな? GetとPostの使い分けはどういう場合? GetとPostの使い分けは以下のようなケースの場合で考えればいいようです Getメソッドは参照(リソースの取得)のみに用いる Getメソッドは副作用がないことが期待される 秘密情報の送信にはPOSTメソッドを用いること 引用:安全なWebアプリケーションのつくり方

    HTTPメソッドGetで個人情報送ってもいいんじゃないの? - Qiita
    akatakun
    akatakun 2019/06/26
    https: から http: へのリンクでは、 Referer: は送らない,GETリクエストはHTTPS => HTTPSならReferrerから漏れる
  • https://louliz.com/ja/programming/go/gzip-with-golang

    https://louliz.com/ja/programming/go/gzip-with-golang
  • 標準添付ライブラリ紹介 【第 7 回】 net/http

    書いた人:cuzic はじめに Ruby には便利な標準添付ライブラリがたくさんありますが、なかなか知られていないのが現状です。 そこで、この連載では Ruby の標準添付ライブラリを紹介していきます。 今回は、ネットワークに分類されているライブラリから HTTP を簡単に扱える net/http を紹介します。 net/http で実現できること あなたもロボット型の検索エンジンは使ったことがありますよね。 Google が代表的です。 Google は巡回ロボット (スパイダー・クローラー) と呼ばれるプログラムを 大量に Web を巡回させ、サーバに蓄積・検索を行うサービスを行っています。 Google では、ブラウザからではなく、プログラムによって、自動的に Web ページを 取得し、それを加工しているわけです。 検索エンジン以外にも Web ページを自動的に取得・加工するサービス

    akatakun
    akatakun 2018/08/03
    open-uriはnet/httpのラップ,ファイルを開くときのようなインターフェイスで簡単にHTTP通信ができる,net/httpはopen-uriより低レベルな実装,より効率的にいろいろなことができる
  • HTTPキャッシュ。なぜ嫌われるのか。 - それマグで!

    忌み嫌われるキャッシュたち。 キャッシュはどうやら、世間では嫌われ者のようです。 ScrenCaptured_2016-03-05_0.54.33 どうして、そんなにキャッシュされるのがイヤなんだろうか。 そもそもキャッシュってなんだっけ? キャッシュとは、更新されていないコンテンツ(画像、CSS、JS、HTMLDNS結果など)を何度も何度も取得行かずに済むように、クライアントPC側で保存し再利用する仕組み。 つまり、転送量の節約。無駄な転送を控える。非常にエコな仕組みであります。 HTTPのエコ。HTTPはエコなプロトコルだったはず。 3つのR です。 Reduce Reuse Remix 。複数のファイルをそれぞれ、別途管理して1つのページとして構成(Remix)する仕組みです。 ブラウザのキャッシュを利用するメリット 通信料の節約、画面表示の高速化、戻るボタン対応など。 ブラウザは

    HTTPキャッシュ。なぜ嫌われるのか。 - それマグで!
    akatakun
    akatakun 2018/03/02
    通信料の節約、画面表示の高速化、戻るボタン対応など,POST時には戻るボタンを始め、キャッシュが効かないのが正しい動作
  • Http caching ruby rails

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Http caching ruby rails
    akatakun
    akatakun 2018/03/02
    Not Modifiedの場合、Viewレンダリングを行わない
  • HTTPステータスコード 4xx系 クライアント側エラー - 脳みそスワップアウト

    400 (Bad Request) 不正な形式,無意味なデータをクライアントが送信してきた場合。 クライアント側の汎用エラーなので,他の4xx系が使えなければこれ。 必要あればbodyにエラーメッセージを付ける。 401 (Unauthorized) 認証情報がない・正しくない。 WWW-Authenticateヘッダにクライアントへの指示を設定,ヒントを与えるべき。 bodyにはエラードキュメント。ヒントのHTMLでもいい。 402 (Payment Required) 予約。規定されていない。 403 (Forbidden) アクセス拒否 但し,これはリソースが存在することを暗黙のうちに公表している。404も検討すべき。 単に認証情報が不足している場合は401なので,。 特定IPや時間帯による制限に使う方がいいのだろう。 bodyには拒否された理由のドキュメント。必須ではない。 404

    HTTPステータスコード 4xx系 クライアント側エラー - 脳みそスワップアウト
    akatakun
    akatakun 2017/08/18
    403(Forbidden): アクセス拒否。但し,これはリソースが存在することを暗黙のうちに公表している。404も検討すべき,404(Not Found): リソースがない場合。このURIが空いていることも示しているのだが
  • Why Handler registered by http.HandleFunc is called twice?

    akatakun
    akatakun 2017/06/27
    ルートパスのハンドラが2回呼び出される理由
  • net/http の動きを少しだけ追ってみた - Go

    Go の標準パッケージである net/http を使えば簡単に HTTP サーバーを立てることができる。とは言うものの、自分はそのへんが実際どうなってるのか全然わかってない。つらい。ということで、Go の勉強も兼ねて net/http の動きを少しだけ追ってみることにした。 まず、net/http を用いたよく見かけるサンプルコードを書いてみる。 package main import ( "fmt" "log" "net/http" ) func poyo(w http.ResponseWriter, r *http.Request) { fmt.Fprintf(w, "poyo!") } func main() { http.HandleFunc("/", poyo) if err := http.ListenAndServe(":9090", nil); err != nil { l

    net/http の動きを少しだけ追ってみた - Go
    akatakun
    akatakun 2017/06/19
    なるほど
  • Go言語でhttpサーバーを立ち上げてHello Worldをする - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    Go言語でhttpサーバーを立ち上げてHello Worldをする - Qiita
  • Web サービスの完全 HTTPS 化 - クックパッド開発者ブログ

    インフラストラクチャー部長の星 (@kani_b) です。 2017年1月5日をもって、クックパッド における全ページで HTTPS が使われるようになりました。 完全 HTTPS 化をするにあたり、その理由や具体的な進め方について紹介します。 以前 SRE Tech Talks #2 にて一部発表した内容も含みますので、ご興味のある方はあわせてスライドもご覧ください。 完全 HTTPS 化に踏み切った理由 以前のクックパッドは、ログインや登録情報の参照など、いわゆる個人情報や認証情報を扱う箇所のみに HTTPS が使われていました。 このように「必要な箇所にのみ HTTPS を使う」構成は、ある程度歴史のある Web サービスにおいてよく使われている構成です。 この状態から、完全 HTTPS 化に踏み切った理由を説明します。 サービスをよりセキュアにするため HTTPS の利用を考えるに

    Web サービスの完全 HTTPS 化 - クックパッド開発者ブログ
  • 全自動食器洗い機のHTTPサーバーにディレクトリトラバーサルの脆弱性 | スラド セキュリティ

    ドイツの家電メーカーMiele(ミーレ)の業務用全自動器洗い機のWebサーバー機能に、ディレクトリトラバーサルの脆弱性が発見された(Register、Seclist.org)。 問題が発見された製品はMiele Professional PG 8528という製品。大型の業務用製品で、ネットワーク接続機能や遠隔操作機能も搭載している。 脆弱性は昨年11月に発見され、Miele側に問い合わせが行われたものの、対応を行うかどうかの反応がなかったため3月23日付けで脆弱性が公開されたようだ。これによってハッシュ化されたパスワードが記録されたファイル(/etc/shadow)を外部から取得できるといった問題があるとのこと。 さすがに器洗い機には機密情報は記録していないだろうし、外部から不特定多数がアクセスできるような環境にある器洗い機も少ないとは思われるが、第三者によって器洗い機が乗っ取られ

    全自動食器洗い機のHTTPサーバーにディレクトリトラバーサルの脆弱性 | スラド セキュリティ
    akatakun
    akatakun 2017/03/31
    全自動食器洗い機にHTTPサーバが搭載される時代かw
  • HTTP GET with request body

    I'm developing a new RESTful webservice for our application. When doing a GET on certain entities, clients can request the contents of the entity. If they want to add some parameters (for example sorting a list) they can add these parameters in the query string. Alternatively I want people to be able to specify these parameters in the request body. HTTP/1.1 does not seem to explicitly forbid this.

    HTTP GET with request body
    akatakun
    akatakun 2017/02/14
    HTTP/1.1は仕様上GETリクエストでBODYを仕様することを禁止していない,ただオススメされてはいない
  • HTTP ヘッダー - HTTP | MDN

    このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。 �ׇΪ�View in English �5�Ϊ�Always switch to English HTTP ヘッダーを使用すると、クライアントとサーバーは、リクエストまたはレスポンスのメッセージに追加情報を渡すことができます。 HTTP/1.X では、ヘッダーは、大文字と小文字を区別しない名前、その後にコロン、オプションの空白(無視されます)、そして最後にその値が続く形式です(Allow: POST など)。 HTTP/2 以降では、開発者ツールで表示すると、ヘッダーは小文字で示され (accept: */*)、擬似ヘッダーの特別なグループには接頭辞としてコロンが付きます (:status: 200)。 それぞれのプロトコルバージョンの構文に関

    HTTP ヘッダー - HTTP | MDN
    akatakun
    akatakun 2016/11/04
    接頭辞"x-"はカスタムヘッダ
  • HTTPステータスコードを適切に選ぶためのフローチャート : 難しく考えるのをやめよう | POSTD

    HTTPステータスコードを返すというのはとても単純なことです。ページがレンダリングできた?よし、それなら 200 を返しましょう。ページが存在しない?それなら 404 です。他のページにユーザをリダイレクトしたい? 302 、あるいは 301 かもしれません。 I like to imagine that HTTP status codes are like CB 10 codes. "Breaker breaker, this is White Chocolate Thunder. We've got a 200 OK here." — Aaron Patterson (@tenderlove) 2015, 10月 7 訳:HTTPのステータスコードのことは、市民ラジオの10コードみたいなものだと考えるのが好きです。「ブレーカー、ブレーカー、こちらホワイト・チョコレート・サンダー。200

    HTTPステータスコードを適切に選ぶためのフローチャート : 難しく考えるのをやめよう | POSTD
  • 1