Posted by on the 24th of July, 2020 at 9:26 am under World of Warships.  This post has 2 comments.

첫번째 10티어 몬타나 진수했습니다.

예~~전 네이비필드 할 때부터 미국 전함에 꽂혀서 월드 오브 워쉽에서도 미국 전함먼저 했네요. 드디어 10티어 몬타나 진수했습니다. 함체 사느라 돈 다 털어넣어서 이큅도 아직 다 못샀네요 ㅎㅎㅎ

Posted by on the 3rd of May, 2020 at 8:46 am under 컴퓨터.  This post has no comments.

DS-216+II 살 때부터 8GB로 메모리 업그레이드가 가능한 것은 알고 있었다. 그렇지만 진짜 저장 용도 말고는 딱히 쓰는게 없기 때문에 1GB도 충분하다고 생각했다. 그 전부터 쓰던 DS-211+ 는 ARM CPU에 512MB 였기 때문에 처음에 DS-216+II 처음 받았을때는 무척 빨라 만족스러웠다.

문제는 DLNA 서버로 미디어 서버 대신 Serviio로 바꾸고 부터 생겼다. 미디어 서버는 Audio Station, Photo Station에서 같이 쓰는 music, photo도 같이 보여주는데 제한을 할 수 없었다. 다른 DNLA 서버를 찾았고 마침 Serviio가 과하지도 않고 원하는 기능을 가지고 있어서 선택했다.

그런데 Serviio가 영상 파일이 늘어나니 메모리 사용량이 엄청 많아졌다. Java로 만든 앱인데 기본 설정이 최대 512MB 까지 쓰도록 되어 있다. RAM이 1GB 인데 혼자서 막 메모리를 많이 쓰다 보니까 SWAP때문에 계속해서 드드륵 거렸다. SWAP때문에 드르륵 거리니 DSM 자체로 많이 느려졌다. 거기에다 TV로 영상을 보는 도중에 멈추는 일도 많았다. 그래서 결국 메모리 업그레이드를 했다.

DS-216+II는 DDR3L 1.35v 8GB 까지 업그레이드 가능하다. 주문한 메모리를 받고 교체 했다. 분해, 조립 사진을 찍어 올릴까 하다가 이미 인터넷에 많이 있어서 안했다. 여기를 참고했는데 자세하게 나와 있어서 쉽게 교체할 수 있었다. 교체 하는김에 그 동안 쌓인 먼지도 같이 제거했다.

메모리 업그레이드 하고 나니 다시 빠릿빠릿 해지고 조용해졌다. 무척 만족스럽다.

Posted by on the 23rd of April, 2020 at 2:55 am under World of Warships.  This post has no comments.

노스캐롤라이나 뽑고 한달 정도 걸려서 아이오와 올렸어요 ㅎㅎ 생각지도 못한 프리미엄 2주를 받아서 열심히 탔더니 예상보다 빠르게 경험치를 모았네요 ㅎㅎ 풀업 다 하고 17만을 모았습니다.

(read more)
Posted by on the 16th of March, 2020 at 5:27 am under World of Warships.  This post has no comments.

노스캐롤라이나 올리기 직전 전투를 기분좋게 이기고

(read more)
Posted by on the 6th of February, 2018 at 10:51 pm under 사는이야기.  This post has 2 comments.

iwinv에서 perl CGI script를 어떻게 했나 궁금하신 분이 계셔서 정리 해 봅니다.

안 해본 방법

홈페이지를 옮기고 나서 perl CGI script가 동작하지 않는 것을 확인하고 게시판에 문의를 넣어봤습니다. 거기에 이런 답변을 받았습니다. 답변 받은 내용이니 아마 될 거 같은데 전 답변을 확인한 시점이 이미 아래 적을 PHP를 만든 뒤여서 확인은 안했습니다.

안녕하세요.

iwinv 입니다.

웹호스팅에서 perl과 cgi 기능을 이용 하실 수는 있으나, 웹방화벽을 사용 하고 계시면 정상적으로 이용 할 수 없을 수도 있습니다.

관리 콘솔 – 계정 – 웹방화벽 off 를 해보시기 바랍니다.

감사합니다.

PHP wrapper script로 돌리는 방법

php로 직접 perl cgi를 실행하고 그 결과를 HTML로 전달하는 방법입니다.

<?php
echo "<!--".PHP_EOL;

$num_get = count($_GET);
$num_post = count($_POST);

echo " # of _GET:".$num_get.PHP_EOL;
echo " # of _POST:".$num_post.PHP_EOL;

$param = "";

if($num_get > 0)
{
    foreach($_GET as $key => $value)
    {
        echo $key.'='.$value.PHP_EOL;
        $param = $param."$key=$value&";
    }
}

if($num_post > 0)
{
    foreach($_POST as $key => $value)
    {
        echo $key.'='.$value.PHP_EOL;
        $param = $param."$key=$value&";
    }
}

echo "-->".PHP_EOL;

exec("QUERY_STRING=\"$param\" /usr/bin/perl ".dirname($_SERVER['SCRIPT_FILENAME'])."/pldbbs.cgi", $output);

$header_found = 0;

foreach($output as $line)
{
    if($header_found == 0)
    {
        if(strlen($line) > 0)
        {
            continue;
        }
        else
        {
            $header_found = 1;
        }
    }    

    $line = str_replace("pldbbs.cgi", "pldbbs.php", $line);
    echo $line.PHP_EOL;
}
?>

GET 또는 POST 변수들을 만들어서 QUERY_STRING으로 전달하고 perl을 이용해 직접 스크립트를 실행합니다. 실행한 결과에서 http header 부분을 제거하고 html 부분에서 pldbbs.cgi를 pldbbs.php로 바꿨습니다. 저 같은 경우는 예전에 사용한 방명록을 읽기 전용으로 바꿨기 때문에 이 정도 수정으로 충분 했습니다. 쿠키를 쓰는 경우는 해당 코드를 추가로 구현해야 합니다.

덧붙여서 cgi 파일 소스가 그대로 나오기 때문에 다음과 같이 .htaccess 파일을 추가해서 소스가 나오지 않게 하는 것이 좋습니다.

<Files ~ "^.*\.([cC][gG][iI]|[lL][oO][gG])">
order allow,deny
deny from all
satisfy all
</Files>