2011년 9월 22일 목요일

서버 사이트 enable


11) 사이트 enable

#a2ensite 계정
#/etc/init.d/apache2 reload

그래프 체크리스트

가격 먼저

사전작업
1.5개의 일
단계 

하루 물 다섯잔



5:30~7:30 기상
30분 명상
12~2시 점심식사
30분 학습
30분 작업
화 안내기
낮잠 안자기 
야한거 안보기
100년의 기업

아홉가지 항목당 배점 : 9

2011년 9월 20일 화요일

그누보드 좌측 메뉴가 안나온다.

왼쪽 메뉴면 head.php 맨 하단쪽에.. 이런식으로 해당 페이지만 노출 되게 조건문으로 잡혀있으실거에요
<? if($_SERVER[PHP_SELF]!="index.php"){ ?>....







뭔가 따라하시려다가 ..잘못하신듯..
<?
include_once("./_common.php");
include_once("$g4[path]/head.php");
?>
대도록이면 매뉴얼을 꼼꼼히 일어보시고 시도하세요
그리고 참고로 common.php위치를 수정하시면 그에 맞에 전체로 잡아줘야하겠죠
폴더안에 넣었으면 common.php를  .. 으로 부르는게 맞습니다.ㅏ
<?
include_once("$g4[path]/tail.php");
?>



두가지 내용의 답변이 달렸다. 두번째 문제는 아니다. 첫번째 나온 내용을  head.php에서 보니 상기와 같은 코드를 찾아볼 수 없다.

html css 코딩에 도움이 되는 웹표준 메뉴얼

웹표준 가이드 DAUM

웹표준 가이드 NHN

제너 웹스타일 가이드

블루비

밤늦게 무리하게 운동하면

다음날 아침에 정신 못차린다.

2011년 9월 16일 금요일

심미성 > 매칭 > 아이디어

시간을 아끼려면 작업 이미지를 확보해 놓아야 한다.

웹에서 마음에 드는 공산품 혹은 그래픽적인 이미지를 찾기 어렵다.

시간을 아끼려면 작업 이미지를 확보해 놓아야 한다.

css id와 class의 차이점

id는 한개의 태그에만 지정할 수 있다.
이와 달리 class는 복수의 태그에 지정할 수 있다.

그래서 id는 #wrap, #header, #container, #footer에 사용하고, 그 외의 요소인 .navi, .side 같은 요소에는 class를 적용 한다.

그래픽 도구를 다룰 때 기본이 가장 중요하다.

그래픽 도구를 다룰 때 기본이 가장 중요하다

기본에서 응용이 나온다. 기본을 익히기 위해 메뉴얼을 확보하자.

가급적 한개 페이지에 이미지를 두개 이상 넣지 말자.

가독성을 위해서 한개 페이지에 이미지를 두개 이상 넣지 말자.

두개의 이미지를 넣어야 한다면 하나로 줄이고, 세개의 이미지를 넣어야 한다면 두개로 줄이자.

html 위로 가기 링크

위로 가기 링크
<a href="#">위로</a>


특정 위치로 가기 링크
<a name="abc"></a>
.
.
.
.
<a href="#abc">위로</a>

2011년 9월 15일 목요일

css 이름, 명칭

css를 나눌 때,

/*navigation*/
.navi span
.navi td a

/*content*/
.content table

식으로 해서 css 명칭을 명확히 해야 겠다.

font (폰트)의 속성을 한번에 정의하기

폰트의 속성을 한번에 정의하기


font-style font-variant font-weight font-size/line-height font-family 순으로 정의 한다.


font-size, font-family는 필수이며, 다른 속성은 옵션으로 정의 하지 않아도 된다.


전체지정
<style>
 {font : italic inherit bold 11pt verdana}
</style>


간단지정
<style>
 {font : 11pt verdana }
</style>

2011년 9월 14일 수요일

웹호스팅

호스트IT 경우 도메인만 신청하 웹호스팅과메일을 무료로 제공하는데
1 7G까지 무료로 사용이 가능합니다~



출처: 호스트잇story

쿠분투 잘 사용하는 법

어플리케이션이나 데스크톱 전환기를 실행할 때, 단축키를 사용하면 상당히 편리하다.
크롬 alt+c, 파이어폭스 alt+f, 시스템관리 alt+s 식으로 적용한다.
데스크톱 전환기는 ctrl+f1, ctrl+f2가 기본 단축키 이다.

덧붙여서, yakuake나 amarok같은 kde 전용 어플리케이션을 사용해야 시스템이 무리없이 잘 작동한다.


티스토리 도저히 못쓰겠다.

관리자 인터페이스가 복잡. 그리고 구글 블로그 서비스인 블로거(blogger)에서 내보낸 xml을 불러오지 못하고 각종 오류를 낸다. 블로거에서 티스토리로 이사하려면 일명 '꼼수'라는 방법을 사용해야 할 것으로 보인다. (정신적으로 이롭지 못한 방법이겠지만 말이다.)

그러나 모바일페이지에서 글작성 가능한 것은 장점이다. (블로거도 어플을 통해서 글작성을 할 수 있기는 하다.)

2011년 9월 13일 화요일

우분투 포럼 운영진 인터뷰

임베디드 분야 기술 및 개발 이슈

차니의 강의 동영상 및 자료 총정리


출처 : 차니의 강의 동영상 및 자료 총정리

사이트제작 6대 법칙


네비게이션(Navigation)

가독성(Readability)

양식의 사용(Form Use)

접근성(Accessibility)

성능(Performance)

유지보수성(Maintainability)

출처: 프 디 커

pre태그 사용하면 글자가 레이아웃 밖으로 나간다.

pre태그 사용하면 글자가 레이아웃 밖으로 나간다. 그냥 pre태그를 적용하지 않는게 낫다.

blockquote 태그

blockquote 태그는 인용문 혹은 인용구를 나타낼 때 사용하는 태그라고 한다.
block은 덩어리, 막다라는 뜻. quote은 '인용하다' 라는 뜻이다. 합치면 인용 덩어리라는 뜻이 나온다. 그러므로 css를 적용할 수도 있다.
blockquote {
background-color:#F4F5F7;
border:1px dashed #CCC;
padding:8px 8px 8px 8px;
margin:5px 0;} 
출처: mclee's blog


<p>나 <div> 같은 형님 (block) 태그로 감싸주어야 한다. 만약 <blockquote> 태그 안에 그냥 글자만 넣었거나 아우 (inline) 태그로만 감쌌다면 웹 표준 검사에서 오류라고 나온다.
출처: 황씨건축
cite속성값을 통해 내용의 출처를 밝힐 수도 있다. (물론 오프라인이 아닌, 온라인 출처) 여기서
cite도 역시 '인용하다'라는 뜻.
<blockquote cite="http://news.mt.co.kr/mtview.php?no=2011091310033429964">
KT (37,400원 상승750 -2.0%)는 삼성전자, LG전자와 협력해 중장년층이 보다 쉽고 편리하게 스마트폰을 이용할 수 있도록 하는 전용 UI(사용자환경)를 선보인다고 13일 밝혔다.
이에 따라 삼성전자의 갤럭시S에는 '큰글씨 홈', LG전자 옵티머스 블랙에는 '이지(Easy) 홈'이라는 이름으로 UI가 탑재된다. 

</blcokquote>

드롭다운메뉴에 운좋게 웹표준이 적용됐다.


<style type="text/css">
#jsddm ,
#jsddm  li,
#jsddm  ul {
 list-style: none;
 margin: 0;
 padding: 0;
}


#jsddm li {float: left; list-style: none; font: 13px 돋움, dotum, Arial; vertical-align: middle; line-height: 1.3em; zoom: 1; }

#jsddm li a {
display: block;
padding: 14px 23 14px 24px;
background: #eeeeee;
text-decoration: none;
color: black;
white-space: nowrap;
display: block;

}

#jsddm li a:hover {background: #9ACD32}

#jsddm li ul {
margin: 0;
padding: 0;
position: absolute;
visibility: hidden;
z-index:2;
}

#jsddm li ul li {

float: none;
display: block;
width: 160px;
background-color: #eeeeee;
}

#jsddm li ul li a {
width: 100%;
background: #eeeeee;
color: #24313C}

#jsddm li ul li a:hover{
background: #9ACD32}
</style>

<script src="/js/jquery-1.4.2.min.js" type="text/javascript"></script>
<script type="text/javascript">
var timeout         = 500;
var closetimer    = 0;
var ddmenuitem      = 0;

function jsddm_open()
{  jsddm_canceltimer();
   jsddm_close();
   ddmenuitem = $(this).find('ul').eq(0).css('visibility', 'visible');}

function jsddm_close()
{  if(ddmenuitem) ddmenuitem.css('visibility', 'hidden');}

function jsddm_timer()
{  closetimer = window.setTimeout(jsddm_close, timeout);}

function jsddm_canceltimer()
{  if(closetimer)
   {  window.clearTimeout(closetimer);
      closetimer = null;}}

$(document).ready(function()
{  $('#jsddm > li').bind('mouseover', jsddm_open);
   $('#jsddm > li').bind('mouseout',  jsddm_timer);});

document.onclick = jsddm_close;
</script>
<ul id="jsddm">
        <li><a href="<?=$g4[path]?>/?pid=01_01">진흥회소개</a>
                <ul>
                        <li><a href="<?=$g4[path]?>/?pid=01_01">인사말</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=01_02">설립목적 및 연혁</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=01_03">주요사업</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=01_04">조직도</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=01_05">찾아오시는 길</a></li>
                </ul>
        </li>
        <li><a href="<?=$g4[path]?>/bbs/board.php?bo_table=board_05_01">정보자료실</a>
                <ul>
                        <li><a href="<?=$g4[path]?>/bbs/board.php?bo_table=board_05_01">화학뉴스</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=02_02">화학산업관련통계</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=02_03">발간자료</a></li>
                </ul>
        </li>
        <li><a href="<?=$g4[path]?>/?pid=03_01">자금지원</a>
                <ul>
                        <li><a href="<?=$g4[path]?>/?pid=03_01">특정물질사용합리화기금</a></li>
                </ul>
        </li>
        <li><a href="<?=$g4[path]?>/?pid=04_01">회원사</a>
                <ul>
                        <li><a href="<?=$g4[path]?>/?pid=04_01">회원사현황</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=04_02">회원가입안내</a></li>
                </ul>
        </li>
        <li><a href="<?=$g4[path]?>/bbs/board.php?bo_table=board_02_01">공지사항</a>
                <ul>
                        <li><a href="<?=$g4[path]?>/bbs/board.php?bo_table=board_02_01">게시판</a></li>
                </ul>
        </li>
        <li><a href="<?=$g4[path]?>/?pid=06_01">제품안전정보</a>
                <ul>
                        <li><a href="<?=$g4[path]?>/?pid=06_01">사업소개</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=06_02">PSDS자료</a></li>
                        <li><a href="<?=$g4[path]?>/?pid=06_03">관련정보 및 사이트</a></li>
                </ul>
        </li>
</ul>


그러나 #jsddm li ul li 에서 문자 길이가 늘어나면 width도 늘려야 한다.

홈페이지 디자인시 배경컬러를 적용하면 편하다.

홈페이지 디자인시 처음부터 끝까지 배경컬러를 적용하면 편하다.
red, yellow가 검정 글자가 대비되어 가독성이 좋은 것 같다.

스팸 문자 차단 목록

capital
릴껨
c0m
무_료
카_지노
바다 이야기
선거정보
선거운동본부
성인온라인
대박게임
바^둑이
포^커
비*아
무료머니
그ㄹr
초고속인터넷
실머니
금.융
현금행사
지금가입
무방문
대*출
대^출
대/출
대_출
대.출
080
벳팅
하나금융
릴겜
고^래
상^어

애인대행
$
여대생
연^타





/
비아
연타
잭팟
최저

이벤
카라
거부


당일
신규




















정보료
국내최대

스팸문자 차단 목록
사행성 게임, 성, 대출과 관련 상품들이 대부분 이었다.
KT를 사용중이라 올레 모바일 사이트에서 스팸문자등록을 하였다.

2011년 9월 11일 일요일

크로스 브라우징 테스팅 툴

Tool Number of browser versions supported IE? Interactive testing? Side-by-side testing? Pricing
Adobe BrowserLab 13 IE6+ No Yes Free
Browsershots 60+ IE6+ No No Free
SuperPreview Varies IE6+ Yes Yes Free
Lunascape 3 IE6+ Yes Yes Free
IETester 6 versions of IE IE5.5+ Yes Yes Free
IE NetRenderer 5 versions of IE IE5.5+ No No Free
Spoon 16+ no IE Yes No Free
Sauce Labs 40+ IE6+ Yes No Free — $499 per month
Browsera 9 IE6+ No Yes Free – $99/month
Browserling 9 IE5.5+ No No Free – $20/month
Mogotest 7+ IE6+ No Yes $15 – $4,499/month
Cloud Testing 4+ IE6+ Yes Yes Not specified
BrowserCam 90+ IE5.2+ Yes Yes $19.95 – $89.95/month
Multi-Browser Viewer 80+ IE6+ For some browsers Yes $139.95
CrossBrowserTesting 100+ IE6+ Yes Yes $29.95 – $199.95/month

다양한 브라우저를 지원하고 인터렉티브와 라이센싱이 자유로운 툴을 추리면
Lunascape, SuperPreview이다.
그러나 둘다 .exe포멧 설치형이라 리눅스에서는 무리이다. 개인적으로 무설치, 속도, 로그인이 필요치 않은 점으로 불때 IE NetRenderer 가 가장 편하다.

data source : www.smashingmagazine.com
크로스 브라우징 테스팅 툴

kate 에디터 단축키

F11 : 줄 번호 표시

ctrl + G : 줄 번호 찾기

ctrl + F : 문자열 찾기

ctrl + R : 바꾸기

ctrl + D : 주석 적용

2011년 9월 9일 금요일

접속 통계

구글 Analytics를 이용하여 방문자수, PV, 검색유입사이트 등의 통계를 보기도 하고, 기업에 따라서는 소셜미디어 키워드 분석 툴을 도입하기도 합니다.


출처: http://xenerdo.com/706#.TmoQ4qWfk1I

홈페이지에 다음지도 달기


http://dna.daum.net/apis/maps/v3
https://apis.daum.net/register/myapi.daum


<!DOCTYPE html>
<html>
<head>
<title>Hello, World!</title>
<meta name="viewport" content="initial-scale=1.0,user-scalable=no">
<style type="text/css">
html { height: 100% }
body { height: 100%; margin: 0; padding: 0 }
#map { width: 100%; height: 100% }
</style>
<script type="text/javascript" src="http://apis.daum.net/maps/maps3.js?apikey=다음 API서버에서 받은 인증키" charset="utf-8"></script>
<script type="text/javascript">

window.onload = function() {
  var position = new daum.maps.LatLng(사용자 위도값, 사용자 경도값);
  var map = new daum.maps.Map(document.getElementById('map'), {
    center: position,
    level: 4,
    mapTypeId: daum.maps.MapTypeId.ROADMAP
  });

/*기본마커*/
  var marker = new daum.maps.Marker({
    position: position
  });
  marker.setMap(map);
  var zoomControl = new daum.maps.ZoomControl();
      map.addControl(zoomControl, daum.maps.ControlPosition.RIGHT);
      var mapTypeControl = new daum.maps.MapTypeControl();
      map.addControl(mapTypeControl, daum.maps.ControlPosition.TOPRIGHT);
   
/*인포윈도우*/
   var infowindow = new daum.maps.InfoWindow({
         content: '<p style="margin:7px 12px;font-size:12px">인포윈도우만 띄울 수도 있습니다.</p>'
      });
 
      daum.maps.event.addListener(marker, "click", function() {
         infowindow.open(map, marker);
      });
 
      daum.maps.event.addListener(map, "click", function() {
         infowindow.close();
      });
};
</script>
</head>
<body>
<div id="map" style="width:600px;height:600px;"></div>
</body>
</html>

홈페이지에 트위터 달기

http://www.readwriteweb.com/archives/10_twitter_list_widgets_you_can_grab_embed_right_n.php

테이블에서 table-layout:fixed 적용시 td가 동일한 크기로 나눠질 때

파이어폭스 브라우저 사용시

테이블 table-layout:fixed와 <td>의 속성값인 colspan 혹은 rowspan을  동시 적용했을 때
개별 <td>가 동일한 크기로 나눠진다. 아무리 개별 <td>에 <td width="300"><td width="100">으로 적용해봐도 width값이 변하지 않는다.

그럴 땐, <col width="300"><col width="100">을 적용해야 한다.
<html>
<body>
<table width="400px" cellpadding="0" cellspacing="0" style="table-layout:fixed">
<tr>
   <td colspan="2" bgcolor="red">ABCDEFG</td>
</tr>
<tr><col width="300"><col width="100">
   <td bgcolor="yellow">ABCDEFG</td>
   <td bgcolor="blue">ABCDEFG</td>
</tr>
</table>
</body>
</html>

2011년 9월 8일 목요일

2011년 9월 4일 일요일

qmail설치

centOS
http://huikyun.tistory.com/279

우분투 qmail + vpopmail + qmailadmin + ezmlm 설치 

http://embeddedandroid.tistory.com/20




qmail 컴파일 make: *** [qmail-remote.o] 오류 1


root@server:/usr/local/src/qmail/netqmail-1.05/netqmail-1.05# make
./compile qmail-remote.c
In file included from qmail-remote.c:53:
tls.h:4:25: error: openssl/ssl.h: No such file or directory
In file included from qmail-remote.c:53:
tls.h:7: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
tls.h:9: error: expected ‘)’ before ‘*’ token
In file included from qmail-remote.c:54:
ssl_timeoutio.h:8:3: error: #error "Need OpenSSL version at least 0.9.6"
In file included from qmail-remote.c:54:
ssl_timeoutio.h:11: error: expected declaration specifiers or ‘...’ before ‘SSL’
ssl_timeoutio.h:12: error: expected declaration specifiers or ‘...’ before ‘SSL’
ssl_timeoutio.h:13: error: expected declaration specifiers or ‘...’ before ‘SSL’
ssl_timeoutio.h:15: error: expected declaration specifiers or ‘...’ before ‘SSL’
ssl_timeoutio.h:16: error: expected declaration specifiers or ‘...’ before ‘SSL’
ssl_timeoutio.h:19: error: expected declaration specifiers or ‘...’ before ‘SSL’
qmail-remote.c:55:29: error: openssl/x509v3.h: No such file or directory
qmail-remote.c: In function ‘saferead’:
qmail-remote.c:128: error: ‘ssl’ undeclared (first use in this function)
qmail-remote.c:128: error: (Each undeclared identifier is reported only once
qmail-remote.c:128: error: for each function it appears in.)
qmail-remote.c:129: warning: passing argument 5 of ‘ssl_timeoutread’ makes integer from pointer without a cast
ssl_timeoutio.h:15: note: expected ‘int’ but argument is of type ‘char *’
qmail-remote.c:129: error: too many arguments to function ‘ssl_timeoutread’
qmail-remote.c: In function ‘safewrite’:
qmail-remote.c:141: error: ‘ssl’ undeclared (first use in this function)
qmail-remote.c:142: warning: passing argument 5 of ‘ssl_timeoutwrite’ makes integer from pointer without a cast
ssl_timeoutio.h:16: note: expected ‘int’ but argument is of type ‘char *’
qmail-remote.c:142: error: too many arguments to function ‘ssl_timeoutwrite’
qmail-remote.c: In function ‘quit’:
qmail-remote.c:269: error: ‘ssl’ undeclared (first use in this function)
qmail-remote.c:269: error: ‘SSL_ST_BEFORE’ undeclared (first use in this function)
qmail-remote.c:270: error: ‘SSL_ST_OK’ undeclared (first use in this function)
qmail-remote.c: In function ‘tls_quit’:
qmail-remote.c:337: error: ‘ssl’ undeclared (first use in this function)
qmail-remote.c: At top level:
qmail-remote.c:353: error: expected declaration specifiers or ‘...’ before ‘X509_STORE_CTX’
qmail-remote.c: In function ‘tls_init’:
qmail-remote.c:358: error: ‘SSL’ undeclared (first use in this function)
qmail-remote.c:358: error: ‘myssl’ undeclared (first use in this function)
qmail-remote.c:359: error: ‘SSL_CTX’ undeclared (first use in this function)
qmail-remote.c:359: error: ‘ctx’ undeclared (first use in this function)
qmail-remote.c:392: error: ‘ssl’ undeclared (first use in this function)
qmail-remote.c:405: error: ‘NULL’ undeclared (first use in this function)
qmail-remote.c:411: error: ‘SSL_VERIFY_PEER’ undeclared (first use in this function)
qmail-remote.c:417: error: ‘SSL_FILETYPE_PEM’ undeclared (first use in this function)
qmail-remote.c:457: error: too many arguments to function ‘ssl_timeoutconn’
qmail-remote.c:461: error: ‘X509’ undeclared (first use in this function)
qmail-remote.c:461: error: ‘peercert’ undeclared (first use in this function)
qmail-remote.c:462: error: ‘GENERAL_NAME’ undeclared (first use in this function)
qmail-remote.c:462: error: ‘gens’ undeclared (first use in this function)
qmail-remote.c:465: error: ‘X509_V_OK’ undeclared (first use in this function)
qmail-remote.c:467: warning: passing argument 2 of ‘tls_quit’ makes pointer from integer without a cast
qmail-remote.c:335: note: expected ‘const char *’ but argument is of type ‘int’
qmail-remote.c:479: error: ‘NID_subject_alt_name’ undeclared (first use in this function)
qmail-remote.c:483: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
qmail-remote.c:483: error: ‘gn’ undeclared (first use in this function)
qmail-remote.c:484: error: ‘GEN_DNS’ undeclared (first use in this function)
qmail-remote.c:487: error: ‘GENERAL_NAME_free’ undeclared (first use in this function)
qmail-remote.c:493: error: ‘X509_NAME’ undeclared (first use in this function)
qmail-remote.c:493: error: ‘subj’ undeclared (first use in this function)
qmail-remote.c:494: error: ‘NID_commonName’ undeclared (first use in this function)
qmail-remote.c:496: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
qmail-remote.c:496: error: ‘s’ undeclared (first use in this function)
make: *** [qmail-remote.o] 오류 1


libssl-dev를 설치해준다.
sudo apt-get install libssl-dev

출처: http://ubuntuforums.org/showthread.php?t=423314