웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
개인 서버 운영하시는분 서버 꺼졌을때 메시지 띄우기;
2002.09.11 23:13
글을 시작하면서 이걸 PHP란에 올려야 할지..ㅡㅡ 서버관리 게시판에 올려야 할지 고민했습니다..ㅡㅡ;;
여기다 올려두 되남..ㅡㅡ^
하핫;;
잡담 고만하구 글 쓸께요^^
오늘 제가 쓸 내용은 요즘 개인서버 운영하시는분들이 많더라구여..
그런데 아무래도 개인서버다 보니 운영시간이 24시간 돌아가는것도 아니고 서버가 돌아가지 않는 시간에 홈페이지에 방문객이
찾아왔다가 페이지 안열리면 홈페이지 닫았나 하는 생각에 다시 안올수도 있고 해서 함 만들어 봤습니다..
프로그램의 원리는 이렇습니다.
fsockopen함수를 사용해서 웹서버가 돌아가는 포트로 소켓을 쏴서 정상적이면 서버 홈페이지로 이동!
만약 실패 하면 실패 메시지 띄우기!
저는 아주 간단하게 프로그램을 어떻게 돌리는지에 대한 기술만 하겠습니다...나머지 응용은 한번씩 해보시기 바랍니다^^
<?
#############################################
# SiLVeR's Server Check Program #
# #
# 프로그램에 대한 질문이나 수정사항은 #
# email - silvero@empal.com #
# home - silvero.x-y.net #
# 에서 말씀해주세요~^^ #
#############################################
$address = "http://홈페이지"; #이곳은 본인의 홈페이지 주소를 적으세요
$port = 80; #이곳은 본인의 웹서버가 돌아가는 포트를 적어주시구요
$fp = @fsockopen($address, $port);
if($fp){
echo "이곳에는 서버가 정상적으로 돌아갔음이 확인되었을때 이동할 페이지등을 meta태그등을 이용해 이동하시는데 사용하시면되구요";
}
elseif(!$fp){
echo "이곳에는 서버가 돌아가지 않고 있을때 띄울 메시지등을 띄어주세요";
}
?>
정말 간단하져?ㅡㅡ;;
물론 지금 저 파일이 실행되는곳은 다른계정이여야 겠지용~~^^
참고로 저는
<?
$address = "http://silvero.myip.org";
$port = array(8080,9999,23);
for($i=0;$i<sizeof($port);$i++){
$fp = @fsockopen($address, $port[$i]);
if($fp){
$$port[i] = "ok";
}
elseif(!$fp){
$$port[i] = "no";
}
}
if($8080 == "ok"){
$web = "<a href="http://silvero.myip.org:8080/~guest">[connect]</a>";
$port = "<a href="http://silvero.myip.org:8080/portscan.php">[connect]</a>";
}
elseif($8080 != "ok"){
$web = "<font size=-1>Web Server Down</font>";
$port = "<font size=-1>Web Server Down</font>";
if($9999 == "ok"){
$ftp = "<a href="ftp://guest:guest@silvero.myip.org:9999">[connect]</a>";
}
elseif($9999 != "ok"){
$ftp = "<font size=-1>FTP Server Down</font>";
}
if($23 == "ok"){
$telnet = "<a href="telnet://silvero.myip.org">[connect]</a>";
}
elseif($23 != "ok"){
$telnet = "<font size=-1>Telnet Server Down</font>";
}
?>
이런식으로 telnet ftp web서버를 이용해서 예전에 제가 서버 돌릴때 홈페이지에서 사용했습니다..
좋은 자료 되셧으면 좋겠습니다^^
여기다 올려두 되남..ㅡㅡ^
하핫;;
잡담 고만하구 글 쓸께요^^
오늘 제가 쓸 내용은 요즘 개인서버 운영하시는분들이 많더라구여..
그런데 아무래도 개인서버다 보니 운영시간이 24시간 돌아가는것도 아니고 서버가 돌아가지 않는 시간에 홈페이지에 방문객이
찾아왔다가 페이지 안열리면 홈페이지 닫았나 하는 생각에 다시 안올수도 있고 해서 함 만들어 봤습니다..
프로그램의 원리는 이렇습니다.
fsockopen함수를 사용해서 웹서버가 돌아가는 포트로 소켓을 쏴서 정상적이면 서버 홈페이지로 이동!
만약 실패 하면 실패 메시지 띄우기!
저는 아주 간단하게 프로그램을 어떻게 돌리는지에 대한 기술만 하겠습니다...나머지 응용은 한번씩 해보시기 바랍니다^^
<?
#############################################
# SiLVeR's Server Check Program #
# #
# 프로그램에 대한 질문이나 수정사항은 #
# email - silvero@empal.com #
# home - silvero.x-y.net #
# 에서 말씀해주세요~^^ #
#############################################
$address = "http://홈페이지"; #이곳은 본인의 홈페이지 주소를 적으세요
$port = 80; #이곳은 본인의 웹서버가 돌아가는 포트를 적어주시구요
$fp = @fsockopen($address, $port);
if($fp){
echo "이곳에는 서버가 정상적으로 돌아갔음이 확인되었을때 이동할 페이지등을 meta태그등을 이용해 이동하시는데 사용하시면되구요";
}
elseif(!$fp){
echo "이곳에는 서버가 돌아가지 않고 있을때 띄울 메시지등을 띄어주세요";
}
?>
정말 간단하져?ㅡㅡ;;
물론 지금 저 파일이 실행되는곳은 다른계정이여야 겠지용~~^^
참고로 저는
<?
$address = "http://silvero.myip.org";
$port = array(8080,9999,23);
for($i=0;$i<sizeof($port);$i++){
$fp = @fsockopen($address, $port[$i]);
if($fp){
$$port[i] = "ok";
}
elseif(!$fp){
$$port[i] = "no";
}
}
if($8080 == "ok"){
$web = "<a href="http://silvero.myip.org:8080/~guest">[connect]</a>";
$port = "<a href="http://silvero.myip.org:8080/portscan.php">[connect]</a>";
}
elseif($8080 != "ok"){
$web = "<font size=-1>Web Server Down</font>";
$port = "<font size=-1>Web Server Down</font>";
if($9999 == "ok"){
$ftp = "<a href="ftp://guest:guest@silvero.myip.org:9999">[connect]</a>";
}
elseif($9999 != "ok"){
$ftp = "<font size=-1>FTP Server Down</font>";
}
if($23 == "ok"){
$telnet = "<a href="telnet://silvero.myip.org">[connect]</a>";
}
elseif($23 != "ok"){
$telnet = "<font size=-1>Telnet Server Down</font>";
}
?>
이런식으로 telnet ftp web서버를 이용해서 예전에 제가 서버 돌릴때 홈페이지에서 사용했습니다..
좋은 자료 되셧으면 좋겠습니다^^
댓글 12
-
document
2002.09.12 00:13
저도 이것과 비슷한 방법으로 썼었는데, 지금은 FTP서버운영을 안하는 관계로.. -0-; -
covingtoN
2002.09.12 00:12
오호... 역시... 대단한 팁입니다. 감사~^^ -
(º㉨º)/곰도리
2002.09.15 13:03
와우, 정말 좋은 팁..^-^a 그런데 전 서버를 안 돌려서 원;; -
실버
2002.09.12 19:33
TheMics@nzeo 님 ^^;; 서버는 실행중이라도 포트가 막혀있으면 어짜피 웹에는 접속이 안되자나요^^
그러니깐 결론적으론 서버가 안돌아가는것과 같은 상황이겠죵^^;; -
실버
2002.09.12 19:33
김정록님 말씀하신 질문에 뜻을 잘 모르겠네요...^^;;
만약 김정록님이 domain.com이란 계정을 사용하고 계시면요 domain.com를 다른계정으로 연결 시키시구요..
그 계정 첫 메인화면에서 위의 프로그램을 사용하셔서 홈페이지 대신 아이피를 적으셔도 되요 그래서 서버가 돌아가는
아이피를 체크해서 meta태그를 이용해서 이동하시면 되죵^^ -
TheMics
2002.09.12 17:23
좋은 팁입니다^^그런데 서버는 실행중인데 포트만 막혀있으면 어쩌죠(헛소리임다-_-;;) -
김정록
2002.09.12 17:05
질문 하나 있습니다... 완전 초보자라서...^^;;
웹을 silvero.myip.org에서 돌리고 있고, 위에 있는 파일을 다른 계정에 놓으면...
사람들이 웹에 접속을 할때 silvero.myip.org로 접속을 하면 저 파일을 어떻게 불러올 수 있져? -
장총찬
2002.09.13 16:15
좋은 팁가사합니다.
저는 여기에 조금더 응용해서...
포트가 막혀있으면
SMS를 보내는 것을 넣어 봣어요.
php에서 SMS를 보낼수 있는 사이트가 있어서.. 거기것을 응용했죠.
바로 SMS날라오도록 해놓으니 좋군요.
관심있으신분 smsworld.co.kr 참고하세요.(유료입니다. 선전 아님 )
혹시 공짜로 php에서 SMS날리는 곳아시면 누구 좀 알려주세요. -
뽀유★
2002.09.17 21:09
도메인이 없는 서버를 운영할때는 좋겠지만,
도메인이 있을상태로 운영해서 맴버에게 계정을 줄때
곤란하겠군요.. -
エジ
2004.01.06 17:43
대략 저 내용으로 파일을 만들었지만
저걸 서버에 올려야할지 어디에 올려야할지 난감한; -
エジ
2004.01.06 17:52
대략 IP를 넣을때는 http://IP주소이렇게 넣으면 안되고 IP주소만 넣어야 되네요;
헛;;; 조금 고생했심다;; -
차병권
2004.01.28 06:46
감사합니다............