 |
|
|  |
HTTPS·Î Á¢¼ÓÇÑ »ç¿ëÀÚ¸¦ °Á¦·Î HTTP·Î ¸®µð·º¼Ç ÇÏ·Á¸é |
|
|
 |
5´Þ Àü |
HTTPS·Î Á¢¼ÓÇÑ »ç¿ëÀÚ¸¦ °Á¦·Î HTTP·Î º¯°æÇÏ·Á¸é, ¼¹ö ÂÊ¿¡¼ ¸®µð·º¼ÇÀ» ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù.
¸®µð·º¼ÇÀ» ¼³Á¤ÇÏ´Â ¹æ¹ýÀº »ç¿ë ÁßÀÎ À¥ ¼¹ö (¿¹: Apache, Nginx)¿¡ µû¶ó ´Ù¸¨´Ï´Ù.
µÎ °¡Áö ÁÖ¿ä À¥ ¼¹ö¿¡ ´ëÇÑ ¼³Á¤ ¹æ¹ýÀ» ¼³¸íÇص帱°Ô¿ä.
Apache À¥ ¼¹ö
Apache¸¦ »ç¿ë ÁßÀ̶ó¸é .htaccess ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ±ÔÄ¢À» Ãß°¡ÇÏ¿© HTTPS¿¡¼ HTTP·Î ¸®µð·º¼ÇÇÒ ¼ö ÀÖ½À´Ï´Ù.
RewriteEngine On
RewriteCond %{HTTPS} on
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ÀÌ ±ÔÄ¢Àº »ç¿ëÀÚ°¡ HTTPS·Î Á¢¼ÓÇÒ °æ¿ì, HTTP·Î ¸®µð·º¼ÇÇϵµ·Ï ÇÕ´Ï´Ù.
Nginx À¥ ¼¹ö
Nginx¸¦ »ç¿ë ÁßÀ̶ó¸é,
¼¹ö ¼³Á¤ ÆÄÀÏ (¿¹: /etc/nginx/nginx.conf ¶Ç´Â »çÀÌÆ® ¼³Á¤ ÆÄÀÏ)¿¡¼ ´ÙÀ½°ú °°Àº ³»¿ëÀ» Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù.
server {
listen 443 ssl;
server_name example.com;
# HTTPS·Î Á¢¼ÓÇÑ °æ¿ì HTTP·Î ¸®µð·º¼Ç
return 301 http://$host$request_uri;
}
À§ ¼³Á¤Àº 443 Æ÷Æ® (HTTPS)·Î Á¢¼ÓÇÑ »ç¿ëÀÚ¸¦ HTTP·Î ¸®µð·º¼ÇÇÕ´Ï´Ù.
ÁÖÀÇ»çÇ×
HTTPS¿¡¼ HTTP·Î ¸®µð·º¼ÇÇÏ´Â °ÍÀº º¸¾È Ãø¸é¿¡¼ ÃßõµÇÁö ¾Ê´Â ¹æ¹ýÀÔ´Ï´Ù.
HTTPS´Â µ¥ÀÌÅÍ Àü¼Û ½Ã º¸¾ÈÀ» Á¦°øÇϸç, »ç¿ëÀÚÀÇ °³ÀÎ Á¤º¸ º¸È£¿Í ¾ÈÀüÇÑ Åë½ÅÀ» º¸ÀåÇÕ´Ï´Ù.
HTTPS¿¡¼ HTTP·Î ¸®µð·º¼ÇÇÒ °æ¿ì,
»ç¿ëÀÚÀÇ µ¥ÀÌÅ͸¦ º¸È£ÇÏÁö ¾Ê°Ú´Ù´Â ÀǹÌÀ̹ǷΠ¹Ýµå½Ã º¸¾È ¿ä±¸»çÇ×À» °í·ÁÇÑ ÈÄ °áÁ¤ÇϽñ⠹ٶø´Ï´Ù.
ÀÌ ¹æ¹ýÀ» »ç¿ëÇÒ ¶§, À¥»çÀÌÆ®ÀÇ º¸¾È ¹× »ç¿ëÀÚ ½Å·Úµµ¿¡ ¹ÌÄ¥ ¿µÇâÀ» Àß °ËÅäÇϽñ⠹ٶø´Ï´Ù.
PHP ÆÄÀÏ¿¡¼µµ HTTPS¿¡¼ HTTP·Î ¸®µð·º¼ÇÀ» ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.
PHP´Â ¼¹ö Ãø¿¡¼ ½ÇÇàµÇ¹Ç·Î, ÆäÀÌÁö°¡ ·ÎµåµÉ ¶§¸¶´Ù ÇöÀç Á¢¼ÓÇÑ ÇÁ·ÎÅäÄÝÀ» È®ÀÎÇÏ°í,
HTTPS·Î Á¢¼ÓÇÑ °æ¿ì HTTP·Î ¸®µð·º¼ÇÇÏ´Â Äڵ带 ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
´ÙÀ½Àº PHP¿¡¼ HTTPS¿¡¼ HTTP·Î ¸®µð·º¼ÇÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù.
PHP¸¦ ÀÌ¿ëÇÑ HTTPS -> HTTP ¸®µð·º¼Ç
PHP Äڵ忡¼ HTTPS ¿äûÀ» °¨ÁöÇÑ ÈÄ, HTTP·Î ¸®µð·º¼ÇÇÏ´Â Äڵ带 ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù.
<?php
// HTTPS·Î Á¢¼ÓÇß´ÂÁö È®ÀÎ
if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on') {
// ÇöÀç URL¿¡¼ https¸¦ http·Î º¯°æ
$httpUrl = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
// HTTP·Î ¸®µð·º¼Ç
header("Location: $httpUrl", true, 301);
exit();
}
?>
ÄÚµå ¼³¸í:
1. $_SERVER['HTTPS'] º¯¼ö¸¦ »ç¿ëÇÏ¿© ÇöÀç ¿äûÀÌ HTTPS·Î ÀÌ·ç¾îÁ³´ÂÁö È®ÀÎÇÕ´Ï´Ù.
2. ¸¸¾à HTTPS·Î Á¢¼ÓµÇ¾úÀ» °æ¿ì, ÇöÀç URLÀ» °¡Á®¿Í HTTP·Î º¯È¯ÇÕ´Ï´Ù.
3. header ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© Location Çì´õ¸¦ ¼³Á¤ÇÏ¿© HTTP ÁÖ¼Ò·Î ¸®µð·º¼ÇÇÕ´Ï´Ù.
4. exit() ÇÔ¼ö¸¦ »ç¿ëÇÏ¿© ¸®µð·º¼Ç ÈÄ Ãß°¡ÀûÀÎ Äڵ尡 ½ÇÇàµÇÁö ¾Êµµ·Ï ÇÕ´Ï´Ù.
ÁÖÀÇ»çÇ×
PHP¿¡¼ ¸®µð·º¼ÇÀ» »ç¿ëÇÏ´Â °æ¿ì, PHP Äڵ尡 ¹Ýµå½Ã ¸ðµç HTML Ãâ·Â Àü¿¡ ½ÇÇàµÇ¾î¾ß ÇÕ´Ï´Ù.
¸¸¾à PHP Äڵ尡 ½ÇÇàµÇ±â Àü¿¡ ÀÌ¹Ì HTML Ãâ·ÂÀÌ ½ÃÀ۵Ǿú´Ù¸é,
header ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ¾øÀ¸¹Ç·Î ¸®µð·º¼ÇÀÌ Á¦´ë·Î µ¿ÀÛÇÏÁö ¾Ê½À´Ï´Ù.
¶ÇÇÑ, À§¿¡¼ ¾ð±ÞÇÑ °Íó·³ HTTPS¿¡¼ HTTP·Î ¸®µð·º¼ÇÇÏ´Â °ÍÀº º¸¾È Ãø¸é¿¡¼ À§ÇèÇÒ ¼ö ÀÖ½À´Ï´Ù.
»ç¿ëÀÚÀÇ µ¥ÀÌÅ͸¦ ¾ÈÀüÇÏ°Ô º¸È£Çϱâ À§ÇØ °¡±ÞÀû HTTPS¸¦ À¯ÁöÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.
|
|
̵̧ : 26 |
̵̧
¸ñ·Ï
|
|
|  |
|