웹마스터 팁
홈페이지에 계정 사용량, DB 사용량, 현재 트래픽 출력하기
2010.03.29 01:51
오래전부터 제 홈페이지 카운터 아래부분에 계정의 정보를 출력하도록 했었는데요... (좀 있어 보이려고... ^^)
제로보드4 시절에는 관련 팁이 많아서 그냥 소스 퍼가서 사용하면 됐는데 XE로 오면서 관련 팁이 안보이더라구요...
그래서 여기 저기서 소스 긁어다가 붙여보니 잘 작동 하더군요....
그런데 여긴 [XE 팁 공유]란인데 이게 게시판 용도에 맞는지 모르겠습니다.
예전에는 PHP나 프로그램밍 언어를 공부하는 게시판이 따로 있었는데 지금은 없네요...ㅜ,.ㅜ
제가 사용한 소스는 아래와 같습니다.
<?php // 계정 사용량 출력 //////////////////////////////////////////////////////////////// function size($size) { $unit = Array(" Byte"," KB"," MB"," GB"); if(!$size) return "0".$unit[0]; if($size < 1024) // 바이트 return $size.$unit[0]; if($size > 1024 && $size < 1024*1024) // 킬로바이트 return sprintf("%0.1f ".$unit[1], $size / 1024); if($size > 1024*1024 && $size < 1024*1024*1024) // 메가바이트 return sprintf("%0.1f ".$unit[2], $size / (1024*1024)); if($size > 1024*1024*1000 && $size < 1024*1024*1024*1024) // 기가바이트 return sprintf("%0.1f ".$unit[3], $size / (1024*1024*1000)); } $select_dir = @chdir("디렉토리경로"); $du = `du -sb`; $du = str_replace(".","", $du); $du = trim($du); $du = size($du); // 계정 사용량 출력 //////////////////////////////////////////////////////////////// // Mysql 사용량 출력 (수정하세요) //////////////////////////////////////////////////////////////// $host="localhost"; // 호스트명. $user_name=""; // 자신의 계정 아이디를 적으시면 됩니다. $db_name=""; // 자신의 MySQL DB 아이디를 적으세요. $db_password=""; // 자신의 DB의 패스워드 입니다. // 데이터 베이스 접속 $dbcon = mysql_connect($host,$user_name,$db_password) or message(mysql_error()); mysql_select_db($db_name,$dbcon) or message(mysql_error()); // 전체 테이블 현황을 불러오는 쿼리문 $result = mysql_query("SHOW TABLE STATUS", $dbcon); $total_size = 0; $num = 1; // 데이터베이스 크기구하는 반복문 while($dbData=mysql_fetch_array($result)){ $total_size += $dbData[Data_length]+$dbData[Index_length]; $num++; } // Mysql 사용량 출력 //////////////////////////////////////////////////////////////// // 닫기 mysql_close($dbcon); // 현재 트래픽 출력 //////////////////////////////////////////////////////////////// ini_set("allow_url_fopen","1"); $throttle = "자신의 홈페이지주소/throttle-me/"; $file = file($throttle); $traffic = sprintf("%0.2fMB",strip_tags($file[43]) / 1024); // 44번 라인을 읽어서 태그를 없애고 MB단위로...배열은 0부터 44-1 = 43 // 현재 트래픽 출력 //////////////////////////////////////////////////////////////// echo "<p style='background-color: white; border: 1px solid #eee; padding: 10px 0 10px 14px; margin-top: 5px; line-height: 17px; border: 1px solid #eee; text-align: left; font-size: 8pt; color: #777;'>"; echo "하드사용량 : "; echo $du; echo "<br />"; echo "디비사용량 : "; printf("%0.2f MB",$total_size / (1024*1024)); echo "<br />"; echo "현재트래픽 : "; echo $traffic; echo "</p>"; ?>
위의 소스를 stasus.html 로 저장하시고, 적용하고자 하는 곳에 불러오면 됩니다.
저는 layout.html 에 인클루드로 불러왔습니다.
<!--#include("./stasus.html")-->
위에서 계정 정보를 입력해야 하고, 트래픽 출력을 위해 홈페이지 주소를 입력해야 합니다.
주의하실 점은 트래픽 출력을 위해서는 계정에 throttle-me 이 설치되어 있어야 합니다.
throttle-me 이 설치되어 있지 않다면 관련 부분을 주석처리 하거나 삭제하셔야 겠죠?
참고로 비누넷 사용자들은 그냥 사용하시면 됩니다.
- [2017/08/08] 묻고답하기 시놀로지 XE 설치시 DB 연결 실패 *4
- [2016/03/24] 묻고답하기 폴더안 txt 문서를 php explode 하여 mysql 에 넣는 과정이 안됩니다ㅠㅠ
- [2015/10/29] 묻고답하기 [DB] xe_document_histories 라는 곳에 있는 것들을 지워도 되나요? *2
- [2014/08/29] 묻고답하기 게시글이동 쿼리질문입니다 *2
- [2014/05/11] 묻고답하기 도와주세요ㅠㅠ갑자기 관리자페이지랑 홈페이지가 안들어가지네요ㅠㅠ
댓글 7
-
ㅠㅠㅠ
2010.03.30 14:39
-
SMaker
2010.03.30 18:33
호스팅 받는 곳에 따라 트래픽을 볼 수 있는 주소가 다릅니다.
-
throttle-me
- mytraffic
-
... 등
그 외에도 몇개 더 있는데 기억이 안나네요 ㅠ
-
-
휴우
2010.04.01 00:27
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'blog'@'localhost' (using password: YES) in /home/hosting_users/blog/www/status.html on line 28
Fatal error: Call to undefined function message() in/home/hosting_users/blog/www/status.html on line 28이런 에러메세지가 나면서 안 되네요. 뭐가 문제일까요?
-
klaist
2010.04.01 07:27
22.
// Mysql 사용량 출력 (수정하세요) ////////////////////////////////////////////////////////////////
23.
$host
=
"localhost"
;
// 호스트명.
24.
$user_name
=
""
;
// 자신의 계정 아이디를 적으시면 됩니다.
25.
$db_name
=
""
;
// 자신의 MySQL DB 아이디를 적으세요.
26.
$db_password
=
""
;
// 자신의 DB의 패스워드 입니다
위 부분 정확히 수정하셨는지 다시 한번 확인해보세요
-
뇌제
2010.04.04 10:50
흠. 파란은 file이 안먹혀서 소켓으로 긁어서 실행 되게 만들고 작동까지 가능하게 만들었는데..
왜..
<!--#
include
(
"./stasus.html"
)--> 로 불러들이면 아예 불러오지를 못하는 걸까. 문제로세 '^';
-
대류
2010.04.05 01:08
<!--#
include
(
"./stasus.html"
)-->
경로상의 문제인지 확인해 보세요...
위의 경우는 layout.html 파일과 같은 위치에 있을 때 입니다.
stasus.html 의 위치를 layout 폴더로 옮기시던지, 경로를 맞게 수정하시면 되겠지요?
-
무하뉘
2010.06.22 15:49
다른건 다알았는데 윈도우 계열에 APM_Setup을 설치후에 XE설치하고 표시하는데 다른건 다되는데 "하드용량" 부분은 안되네요 방법이 없는건가요?
미리내는 안되네여 ㅠㅠ