์จ๋ผ์ธ ๊ฐ์
>PHP - ์ด๊ธ
๐ PHP ์ด๊ธ - 8์ฃผ์ฐจ: ํ์ผ ์ ์ถ๋ ฅ ๋ฐ ์ฟ ํค/์ธ์  - 04 $_SERVER ์ํผ ๊ธ๋ก๋ฒ ๋ณ์ ํ์ฉ
				์ฃผ์ ํ๋ก๊ทธ๋จ ์คํ
- ํ์ : 10.0
 - ๋ผ์ด์ ์ค: free
 - ์ด์์ฒด์ :
 - ํ์ผ ํฌ๊ธฐ: 0
 
ํผ๋๋ฐฑ ๋ฐ ๋ค์ด๋ก๋
- ์ฌ์ฉ์ ํ์ : 10.0
 - ๋ค์ด๋ก๋ ์: 1
 - ์กฐํ์: 76
 
์ ์กฐ์ฌ ๋ฐ ๋ฑ๋ก ์ ๋ณด
- ์ ์์ฌ: LUZENSOFT
 - ๋ฑ๋ก์ผ: 2025-07-08 16:02:03
 
- ์ค๋ช
๐ PHP ์ด๊ธ - 8์ฃผ์ฐจ: ํ์ผ ์ ์ถ๋ ฅ ๋ฐ ์ฟ ํค/์ธ์  - 04 $_SERVER ์ํผ ๊ธ๋ก๋ฒ ๋ณ์ ํ์ฉ
์ด๋ฒ ์ฃผ์ฐจ ๋ง์ง๋ง ํฌ์คํ
์์๋ #PHP์ #์ํผ #๊ธ๋ก๋ฒ #๋ณ์ ์ค ํ๋์ธ $_SERVER์ ๋ํด ์์ธํ ์์๋ณด๊ฒ ์ต๋๋ค. $_SERVER๋ #์น #์๋ฒ ํ๊ฒฝ ๋ฐ ํ์ฌ ์คํ ์ค์ธ ์คํฌ๋ฆฝํธ์ ๋ํ ๋ค์ํ #์ ๋ณด๋ฅผ ๋ด๊ณ  ์์ด, #์น ๊ฐ๋ฐ ์ ๋งค์ฐ ์ ์ฉํ๊ฒ ํ์ฉ๋ฉ๋๋ค.
$_SERVER๋?
$_SERVER๋ #PHP๊ฐ #์ ๊ณตํ๋ #๋ฏธ๋ฆฌ ์ ์๋ #์ ์ญ #๋ณ์ ์ค ํ๋๋ก, #HTTP #ํค๋, #๊ฒฝ๋ก, #์คํฌ๋ฆฝํธ ์์น ๋ฑ #์น #์๋ฒ์ #ํด๋ผ์ด์ธํธ์ ์์ฒญ์ ๊ด๋ จ๋ #์ ๋ณด๋ฅผ #์ฐ๊ด #๋ฐฐ์ด ํํ๋ก ์ ์ฅํ๊ณ  ์์ต๋๋ค. ์ด #์ ๋ณด๋ค์ #์๋ฒ๊ฐ #์น ์์ฒญ์ ์ฒ๋ฆฌํ  ๋ ์๋์ผ๋ก ์์ฑ๋๋ฉฐ, #๊ฐ๋ฐ์๊ฐ ๋ณ๋๋ก ์ค์ ํ  ํ์ ์์ด ๋ฐ๋ก ์ ๊ทผํ์ฌ ์ฌ์ฉํ  ์ ์์ต๋๋ค.
$_SERVER์ ์ฃผ์ ์์ ๋ฐ ํ์ฉ
$_SERVER #๋ฐฐ์ด์๋ ๋ค์ํ #ํค(key)์ ๊ทธ์ ํด๋นํ๋ #๊ฐ(value)์ด ์ ์ฅ๋์ด ์์ต๋๋ค. ๋ช ๊ฐ์ง ์ฃผ์ #์์๋ค์ ์์์ ํจ๊ป ์ดํด๋ณด๊ฒ ์ต๋๋ค.
1. #์์ฒญ #์ ๋ณด ํ์ธ
$_SERVER['REQUEST_METHOD']: #ํ์ฌ ํ์ด์ง์ #์์ฒญ๋ #HTTP #๋ฉ์๋๋ฅผ ๋ฐํํฉ๋๋ค. (์:GET,POST,PUT,DELETE)PHP
<?php echo "์์ฒญ ๋ฉ์๋: " . $_SERVER['REQUEST_METHOD']; // ์ถ๋ ฅ ์: ์์ฒญ ๋ฉ์๋: GET ?>
$_SERVER['REQUEST_URI']: #ํ์ฌ ํ์ด์ง์ #URI(Uniform Resource Identifier)๋ฅผ ๋ฐํํฉ๋๋ค. ๋๋ฉ์ธ ์ดํ์ ๊ฒฝ๋ก๋ฅผ ํฌํจํฉ๋๋ค. (์:/index.php?name=value)PHP
<?php echo "์์ฒญ URI: " . $_SERVER['REQUEST_URI']; // ์ถ๋ ฅ ์: ์์ฒญ URI: /mypage/index.php?id=1 ?>
$_SERVER['QUERY_STRING']: #์์ฒญ #URL์์ ๋ฌผ์ํ(?) ๋ค์ #์ฟผ๋ฆฌ #๋ฌธ์์ด์ ๋ฐํํฉ๋๋ค.PHP
<?php echo "์ฟผ๋ฆฌ ๋ฌธ์์ด: " . $_SERVER['QUERY_STRING']; // ์ถ๋ ฅ ์ (URL์ด /page.php?id=123&name=test์ผ ๋): ์ฟผ๋ฆฌ ๋ฌธ์์ด: id=123&name=test ?>
2. #ํด๋ผ์ด์ธํธ #์ ๋ณด ํ์ธ
$_SERVER['REMOTE_ADDR']: #ํ์ด์ง๋ฅผ ์์ฒญํ #ํด๋ผ์ด์ธํธ์ #IP ์ฃผ์๋ฅผ ๋ฐํํฉ๋๋ค.PHP
<?php echo "ํด๋ผ์ด์ธํธ IP ์ฃผ์: " . $_SERVER['REMOTE_ADDR']; // ์ถ๋ ฅ ์: ํด๋ผ์ด์ธํธ IP ์ฃผ์: 127.0.0.1 ?>
$_SERVER['HTTP_USER_AGENT']: #ํด๋ผ์ด์ธํธ์ #์น #๋ธ๋ผ์ฐ์  ๋ฐ #์ด์ #์ฒด์  #์ ๋ณด๋ฅผ ๋ด๊ณ ์๋ #User-Agent #์คํธ๋ง์ ๋ฐํํฉ๋๋ค.PHP
<?php echo "์ฌ์ฉ์ ์์ด์ ํธ: " . $_SERVER['HTTP_USER_AGENT']; // ์ถ๋ ฅ ์: ์ฌ์ฉ์ ์์ด์ ํธ: Mozilla/5.0 (Windows NT 10.0; Win64; x64) ... ?>
3. #์๋ฒ #์ ๋ณด ํ์ธ
$_SERVER['SERVER_NAME']: #ํ์ฌ ์คํฌ๋ฆฝํธ๊ฐ ์คํ๋๊ณ ์๋ #์๋ฒ์ #๋๋ฉ์ธ ์ด๋ฆ์ ๋ฐํํฉ๋๋ค.PHP
<?php echo "์๋ฒ ๋๋ฉ์ธ: " . $_SERVER['SERVER_NAME']; // ์ถ๋ ฅ ์: ์๋ฒ ๋๋ฉ์ธ: localhost ๋๋ www.example.com ?>
$_SERVER['SERVER_PORT']: #์น #์๋ฒ์ #ํฌํธ ๋ฒํธ๋ฅผ ๋ฐํํฉ๋๋ค. (์ผ๋ฐ์ ์ผ๋ก #HTTP๋ 80, #HTTPS๋ 443)PHP
<?php echo "์๋ฒ ํฌํธ: " . $_SERVER['SERVER_PORT']; // ์ถ๋ ฅ ์: ์๋ฒ ํฌํธ: 80 ?>
$_SERVER['DOCUMENT_ROOT']: #์น #์๋ฒ์ #๋ฌธ์ #๋ฃจํธ #๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ๋ฐํํฉ๋๋ค.PHP
<?php echo "์น ๋ฌธ์ ๋ฃจํธ: " . $_SERVER['DOCUMENT_ROOT']; // ์ถ๋ ฅ ์: ์น ๋ฌธ์ ๋ฃจํธ: C:/Apache24/htdocs ?>
4. #์คํฌ๋ฆฝํธ #์ ๋ณด ํ์ธ
$_SERVER['PHP_SELF']: #ํ์ฌ ์คํ ์ค์ธ #์คํฌ๋ฆฝํธ์ #ํ์ผ ์ด๋ฆ์ ๋ฐํํฉ๋๋ค. (#URL ๊ฒฝ๋ก ํฌํจ)PHP
<?php echo "ํ์ฌ ์คํฌ๋ฆฝํธ ํ์ผ: " . $_SERVER['PHP_SELF']; // ์ถ๋ ฅ ์: ํ์ฌ ์คํฌ๋ฆฝํธ ํ์ผ: /mypage/index.php ?>
$_SERVER['SCRIPT_FILENAME']: #ํ์ฌ ์คํ ์ค์ธ #์คํฌ๋ฆฝํธ์ #์ ๋ #๊ฒฝ๋ก๋ฅผ ๋ฐํํฉ๋๋ค.PHP
<?php echo "์คํฌ๋ฆฝํธ ์ ๋ ๊ฒฝ๋ก: " . $_SERVER['SCRIPT_FILENAME']; // ์ถ๋ ฅ ์: ์คํฌ๋ฆฝํธ ์ ๋ ๊ฒฝ๋ก: C:/Apache24/htdocs/mypage/index.php ?>
$_SERVER ํ์ฉ ์์
$_SERVER #๋ณ์๋ #๋ก๊ทธ์ธ #๊ธฐ๋ฅ, #URL #๋ผ์ฐํ
, #๋ณด์ #๊ฒ์ฌ, #์ฌ์ฉ์ #ํ๊ฒฝ #๋ถ์ ๋ฑ ๋ค์ํ ๊ณณ์์ ํ์ฉ๋ฉ๋๋ค.
1. #GET/#POST #์์ฒญ ๊ตฌ๋ณ
PHP
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    echo "์ด ์์ฒญ์ POST ๋ฐฉ์์ผ๋ก ์ ์ก๋์์ต๋๋ค.";
} else {
    echo "์ด ์์ฒญ์ GET ๋ฐฉ์์ผ๋ก ์ ์ก๋์์ต๋๋ค.";
}
?>
2. #ํ์ฌ #ํ์ด์ง์ #์ ์ฒด #URL ์ป๊ธฐ
PHP
<?php
$protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http";
$host = $_SERVER['HTTP_HOST'];
$uri = $_SERVER['REQUEST_URI'];
$current_url = $protocol . "://" . $host . $uri;
echo "ํ์ฌ ํ์ด์ง์ ์ ์ฒด URL: " . $current_url;
// ์ถ๋ ฅ ์: ํ์ฌ ํ์ด์ง์ ์ ์ฒด URL: http://localhost/mypage/index.php?id=1
?>
3. ํน์  #IP ์ฃผ์ ์ ๊ทผ ์ ํ (๋ณด์)
PHP
<?php
$blocked_ip = "192.168.1.100";
if ($_SERVER['REMOTE_ADDR'] === $blocked_ip) {
    die("์ ๊ทผ์ด ๊ฑฐ๋ถ๋์์ต๋๋ค.");
}
echo "ํ์ํฉ๋๋ค!";
?>
์ฃผ์์ฌํญ
$_SERVER #๋ณ์์ ๋ด๊ธด #์ ๋ณด ์ค ์ผ๋ถ๋ #์ฌ์ฉ์๊ฐ ์กฐ์ํ  ์ ์๋ #HTTP #ํค๋์์ ์ค๋ ๊ฒ๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, HTTP_USER_AGENT๋ HTTP_REFERER ๊ฐ์ #์ ๋ณด๋ #ํด๋ผ์ด์ธํธ ์ธก์์ ์ฝ๊ฒ ์์กฐ๋  ์ ์์ผ๋ฏ๋ก, #๋ณด์์ ๋ฏผ๊ฐํ #์์
์๋ ๊ทธ๋๋ก ์ ๋ขฐํด์๋ ์ ๋ฉ๋๋ค. ํญ์ #์ฌ์ฉ์ #์
๋ ฅ์ ๊ฒ์ฆํ๋ ์ต๊ด์ ๋ค์ด์ธ์.
์ด๋ฒ ํฌ์คํ
์์๋ #PHP์ ๊ฐ๋ ฅํ #์ํผ #๊ธ๋ก๋ฒ #๋ณ์ $_SERVER์ ๋ค์ํ #์์๋ค๊ณผ #ํ์ฉ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด์์ต๋๋ค. $_SERVER๋ #์น #๊ฐ๋ฐ์ ๊ธฐ๋ณธ์ ์ธ #์์๋ค์ ์ดํดํ๊ณ  #์น #์ ํ๋ฆฌ์ผ์ด์
์ ๋ ์ ์ฐํ๊ฒ ๊ตฌ์ถํ๋ ๋ฐ ํฐ ๋์์ด ๋  ๊ฒ์
๋๋ค.