Notice
Recent Posts
Recent Comments
Tags
- XSS PHP
- javascript redirection
- Mac Oracle
- JavaScript
- swagger 500 error
- ViewBag
- php 캐쉬제거
- asp.net Select
- 강제이동
- 원격ftp
- TempData
- 타임피커
- 말줄임표시
- ViewData
- asp.net dropdownlist
- 404에러페이지
- simpe ftp
- XSS방어
- asp.net core swagger
- SSD 복사
- asp ftp
- asp.net core Select
- 하드 마이그레이션
- 맥 오라클설치
- javascript 바코드 생성
- django 엑셀불러오기
- ASP.Net Core 404
- 하드 윈도우 복사
- jquery 바코드생성
- 바코드 생성하기
웹개발자의 기지개
[PHP] OUTBOUND 443 가능 여부 확인하기 - discord 알림메세지 허용 본문
discord 등으로 알림 메세지 등을 보낼때,
본서버가 outbound 443 이 가능해야 정상적으로 curl 메세지 발송이 가능하다.
이를 확인할 수 있는 소스를 정리하였다.
막혀있다면 방화벽에서
outbound 443 을 허용토록 하면 되겠다.
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?
header('Content-Type: text/plain; charset=utf-8');
$host = "discord.com"; // 또는 google.com, api.github.com 등
$port = 443;
$timeout = 5;
$start = microtime(true);
$fp = @fsockopen("ssl://".$host, $port, $errno, $errstr, $timeout);
$elapsed = round((microtime(true) - $start) * 1000);
if ($fp) {
fclose($fp);
echo "OUTBOUND 443 가능\n";
echo "Host: {$host}:{$port}\n";
echo "연결시간: {$elapsed}ms\n";
} else {
echo "❌ OUTBOUND 443 실패 (차단/네트워크/DNS/SSL 문제 가능)\n";
echo "Host: {$host}:{$port}\n";
echo "에러번호: {$errno}\n";
echo "에러내용: {$errstr}\n";
echo "소요시간: {$elapsed}ms\n";
}
?>
|
cs |
PHP7 - 접속 가능여부 확인
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?
header('Content-Type: text/plain; charset=utf-8');
$url = "https://discord.com/";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 8);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
$res = curl_exec($ch);
$err = curl_error($ch);
$info = curl_getinfo($ch);
curl_close($ch);
if ($res !== false) {
echo "cURL HTTPS(443) 접속 성공\n";
echo "HTTP CODE: ".$info['http_code']."\n";
echo "총시간: ".round($info['total_time']*1000)."ms\n";
} else {
echo "❌ cURL HTTPS(443) 접속 실패\n";
echo "에러: ".$err."\n";
echo "참고 HTTP CODE: ".($info['http_code'] ?? 'N/A')."\n";
}
?>
|
cs |
PHP5
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
<?
header("Content-Type: text/plain; charset=utf-8");
$url = "https://discord.com/";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 8);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
// SSL 인증서 검증 (구버전 환경에서 문제 발생 시 임시 비활성화 가능)
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
$response = curl_exec($ch);
$error = curl_error($ch);
$errno = curl_errno($ch);
$info = curl_getinfo($ch);
curl_close($ch);
if ($response !== false) {
echo "=============================\n";
echo "cURL HTTPS(443) 접속 성공\n";
echo "=============================\n";
echo "HTTP CODE : " . $info['http_code'] . "\n";
echo "TOTAL TIME: " . round($info['total_time'] * 1000) . " ms\n";
} else {
echo "=============================\n";
echo "❌ cURL HTTPS(443) 접속 실패\n";
echo "=============================\n";
echo "에러번호 : " . $errno . "\n";
echo "에러내용 : " . $error . "\n";
}
?>
|
cs |
'PHP' 카테고리의 다른 글
| [PHP] 초간단 특정 파일의 접근 막기 (0) | 2026.01.30 |
|---|---|
| [PHP] phpinfo() 로 리눅스 환경 정보 구하기 (0) | 2025.11.20 |
| [PHP] 네이버페이, 카카오페이 연동하기 (0) | 2025.11.20 |
| [PHP] 관리자페이지 접근 시도 제한 시키기 - 간단 코드 (0) | 2025.11.02 |
| [PHP] 모든 태그 필터링(제거) 사용자 정의 함수 만들기 (0) | 2025.10.03 |
Comments