5

私は一般的な定義を知っていますが、それらを一般的に実装する方法と特定の PHP を実装する方法の詳細が必要です。また、それらから得られる機能は正確には何ですか?

4

2 に答える 2

5

SSL は "Secure Socket Layer" の略で、(特に) 暗号化された HTTP 通信の方法です。Web ブラウザーとサーバー間のトラフィックを暗号化し、盗聴の心配なく安全なデータを送信できるようにします。

SSL は Web サーバー レベルの技術であり、PHP とは何の関係もありません。PHP が搭載されているかどうかに関係なく、SSL を使用して任意の Web サーバーを有効にすることができます。PHP ページを SSL 経由で表示させるために、特別な PHP コードを記述する必要はありません。

使用している Web サーバーに SSL を設定する方法については、インターネット上に非常に多くのガイドがあります。それは広い主題です。ここから Apacheを開始できます。

于 2009-07-29T06:47:40.763 に答える
3

一部のWebサーバーはサイト全体をミラーリングするように構成されているため、好みやWebブラウザーによる送信方法に応じて、httpまたはhttpsを介してすべてのページを取得できます。httpsは安全ですが、少し遅く、ハードウェアにより多くの負担がかかります。

したがって、サイトを実装して通常どおりに買い物をすることもできますが、カートからチェックアウト、支払いなど、すべてをhttpsの下に置くことにします。これを実現するために、ショッピングカートへのすべてのリンクは絶対的であり、接頭辞として。https://の代わりになりhttp://ます。現在、人々がショッピングカートのアイコンをクリックすると、安全なバージョンに転送され、そこからのすべてのリンクが再び相対的であるため、そこにとどまります。

しかし!httpsを手動でhttpに置き換えるか、悪意のあるリンクを使用して暗号化されていないバージョンに移行する可能性があります。

この場合、スクリプトがhttps(_SERVER["SERVER_PROTOCOL"]、afaik)を介して呼び出されたかどうかを確認し、呼び出されていない場合は実行を拒否することをお勧めします(グッドプラクティス)。または、安全なサイトへのリダイレクトを発行します。

補足:httpsはssl exclusivleyを使用しなくなり、tls(sslの後継、rfc2818を参照)はより現代的です

経験則:ユーザーは、重要ではない環境でhttpまたはhttpsを使用するかどうかを選択できますが、悪意のある攻撃を防ぐために、サイトの重要な部分(ログイン/カート/支払いなど)でhttpsを使用する必要があります。

于 2009-07-29T09:02:20.460 に答える