'Web Dev'에 해당되는 글 10건
- 2009/08/13
- 2009/07/31
- 2008/11/27
- 2007/07/03
- 2007/05/23
- 2007/05/23
- 2007/05/04
- 2007/05/04
- 2007/05/04
- 2007/05/04
| eClipse : myLyn = redMine : SVN 설치 방법 (1) | 2009/08/13 |
|---|---|
| samba smb.conf 설정 (0) | 2009/07/31 |
| eClipse : myLyn = redMine : SVN 설치 방법 (1) | 2009/08/13 |
|---|---|
| samba smb.conf 설정 (0) | 2009/07/31 |
After upgrading to TortoiseSVN 1.5.x, you get a lot of "Access denied" errors for most of the Subversion commands if your working copy is stored on a SAMBA share.
Some users reported that the problem went away after they upgraded SAMBA to the latest version. If that does not help or you can't upgrade, allow readonly files to be deleted in the SAMBA config file:
[global] delete readonly = yes
For older versions, try:
[global] create mask = 0644 force create mode = 0600 security mask = 0555 force security mode = 0600설마 TortoiseSVN 64bit 버전을 쓰기 위해 기존의 1.4.x 버전을 버리고 1.5.x를 깔아 쓰는 계속 퍼미션 에러가 나왔는데 원인을 찾기 위해 모든 경우의 수를 다 분석하다가 설마 했는데 버전에 대한 설정 값을 다르게 해야 할 줄은 꿈에도 몰랐다는...
| Samba + Svn + TortoiseSVN 1.5.x 이용시 삼바 설정 (0) | 2008/11/27 |
|---|
| swig... (0) | 2007/07/03 |
|---|---|
| 최고의 PHP FRAMEWORK CODE IGNITER (0) | 2007/05/23 |
| PHP에서 XML Parsing 주의 사항 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #2 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #1 (0) | 2007/05/04 |
| fancyURL로 구글 검색에 잘 걸리게 하는 방법 (3) | 2007/05/04 |
| swig... (0) | 2007/07/03 |
|---|---|
| 최고의 PHP FRAMEWORK CODE IGNITER (0) | 2007/05/23 |
| PHP에서 XML Parsing 주의 사항 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #2 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #1 (0) | 2007/05/04 |
| fancyURL로 구글 검색에 잘 걸리게 하는 방법 (3) | 2007/05/04 |
미니위니에서 퍼온 것인데 아주 정리가 잘 되었네요..
copyright 류기환님.
| 자바스크립트 라이브러리 목록 (0) | 2007/05/23 |
|---|
가장 기본적인 XML 규약인데 이것을 무시하고 AJAX개발을 한답시고 삽질 하다가 오늘 하루 다 보냈습니다. 알고 있었던 부분이지만 오래만에 XML관련 작업을 하다 보니 미쳐 생각을 못했던 부분이네요..header("Cache-Control: no-cache, must-revalidate");해더에 꼭 content-type을 text/xml로 하셔야 합니다. 그리고 cache부분은 ajax로 XMLHTTPREQUEST로 호출을 하는 부분이기 때문에 Apache에 캐슁이 안되도록 하는 것이 정보의 정확성을 높일 수 있을 것입니다. AJAX 공부 하시는 분들.. 꼭 이 부분을 잊으시면 자바스크립트 오류로 인해서 삽질 하시게 될지도..^^ |
| swig... (0) | 2007/07/03 |
|---|---|
| 최고의 PHP FRAMEWORK CODE IGNITER (0) | 2007/05/23 |
| PHP에서 XML Parsing 주의 사항 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #2 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #1 (0) | 2007/05/04 |
| fancyURL로 구글 검색에 잘 걸리게 하는 방법 (3) | 2007/05/04 |
요즘 정신없이 개발을 하다가 문득 개발자의 코딩 스타일에 많은 관심을 가지게 되면서 DBA 직종의 분들의 소스를 가끔 훔쳐 봅니다. 긴 SQL의 내용은 가로 80라인을 넘어서 New Line 보단 아래로 풀어서 쓰는게 소스 가독성면에서는 뛰어 나다는 것을 깨우치고 작년 부터 SQL 구문은 아래와 같이 사용합니다.
$sql = "뭐 이런 형태로 사용을 하는데 저 렇게 사용하지 않고 일반적으로 사용하면
SELECT
SEQNO, USERID, GBN, DIRECTORY, DEPTH, CREATETIME
FROM
{$strTbName}
WHERE
SEQNO = {$this->SeqNo}";
$result = mysql_query( $sql ) ;
$intDownCount = @mysql_result( $result, 0, 0);
$sql = "SELECT SEQNO, USERID, GBN, DIRECTORY, DEPTH, CREATETIME FROM {$strTbName} WHERE SEQNO = {$this->SeqNo}";
| swig... (0) | 2007/07/03 |
|---|---|
| 최고의 PHP FRAMEWORK CODE IGNITER (0) | 2007/05/23 |
| PHP에서 XML Parsing 주의 사항 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #2 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #1 (0) | 2007/05/04 |
| fancyURL로 구글 검색에 잘 걸리게 하는 방법 (3) | 2007/05/04 |
요즘 소리바다 웹하드 서비스인 파일바다 개발에 한참 열을 올리고 있습니다. 스토리지 이전 때문에 정신없이 시간 가는줄 모르는데 벌서 4월 중반이 되어 버렸습니다. ^^;
요즘 제가 DEBIAN LINUX에서 CGI 개발 한다고 5년만에 다시 GCC를 이용해 C 프로그램밍을 하는데 참 이거이 .. --; PHP가 참 개발 하기 편하구나라고 새삼 또 느끼게 되었습니다. 이놈의 Pointer와 메모리 선언.. 변수형등.. 그리고 함수라고는 몇개 안되고.. SI업체의 라이브러리를 사용해야 하기 때문에 문자열 함수등은 모두 자체개발을 통해 이용해야 하는데 Path경로 자르기 하나 만드는데 머리 터지는 줄 알았습니다.
기존에 PERL로 만든 FILE SYSTEM CGI만들 때도 궁시렁 궁시렁 했지만 PERL 또한 참으로 발전한 언어라고 생각이 들 정도 C의 보수적인 개발 환경.. LINUX 콘솔에서 MAN PAGE와 VI를 통한 개발은 WINDOG XP 와 EDITPLUS의 단축키에 익숙한 저로선 너무나 힘든 개발이었습니다.
하지만 여기서 중요한 것은 까탈스럽고 건조한 GCC의 환경과 C의 메모리 관리체계야 말로 시스템 개발에 가장 안정적인 환경과 메모리 누수를 막기 위한 가장 엄격하다고 할 수 있을거 같습니다. 사실 PHP로 개발을 하다 보면 에러와 Warring만 안뜨면 그냥 넘어 가지만 사실상 효율적인 코딩 스타일이 아니면 향후 Debuging 할때 많은 시간이 소요 되기 마련입니다. 사실 설계와 코딩 시간은 얼마 되지 않지만 디버깅 할때 아무리 부라우져에 찍어봐도 원인 모를 오류 때문에 시간을 많이 빼긴적이 한두번이 아니거든요...
서론이 너무 길었네요.. 본격적인 남구스의 Coding Style #1
그래서 오늘은 저의 코딩 습관에 대해 말씀 드리고 싶습니다. 제가 표준은 아니지만 나름대로의 철학(?)과 해외 유명한 코더들의 습관을 배울려고 많은 노력해서 오늘 여전히 이런 습관을 가지고 개발을 하고 있습니다. 그 중에 몇가지만 소개 하겠습니다.
IF문 비교
가장 많이 사용하시는 제어문은 IF문이 아닐까 합니다. 하지만 좀더 신경을 쓰면 디버깅 오류의 확율을 줄일 수 있습니다.
ex1)
if ( TRUE === empty($val) ) {
echo '$val의 값이 비어 있습니다';
}
ex2)
$intValue = 1;
if ( '1' === $intValue ) {
echo '$intValue = str 1';
}
if ( 1 === $intValue ) {
echo '$intValue = int 1';
}
if ( 1 == $intValue ) {
echo '$intValue = int 1';
}
if ( '1' == $intValue ) {
echo '$intValue = str 1';
}
//print out
$intValue === int 1
$intValue == int 1
$intValue == str 1
if ( $intValue == '1' )
if ( '1' == $intValue )
if ( $intValue = '1' )
Parse error: parse error, unexpected '=' in /var/www/Process/namgoos.php on line 66
| swig... (0) | 2007/07/03 |
|---|---|
| 최고의 PHP FRAMEWORK CODE IGNITER (0) | 2007/05/23 |
| PHP에서 XML Parsing 주의 사항 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #2 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #1 (0) | 2007/05/04 |
| fancyURL로 구글 검색에 잘 걸리게 하는 방법 (3) | 2007/05/04 |
FancyUrl은 기존의 http 주소 체제를 웹서버의 모듈을 통해 특수한 형태로 변환을 하는 것입니다. APACHE의 경우 Mod_Rewrite 모듈이 설치 되어 있으면 사용이 가능한데 이걸 사용 하는 이유에 대해 몇자 올려봅니다.
싸이 월드 미니 홈피 주소 : cyworld.com/namgoos
하지만 실제 주소 : http://minihp.cyworld.nate.com/pims/main/pims_main.asp?tid=29878196
너무 길어서 사람들이 외우기 힘들겠죠..? 웹서버는 cyworld.com/ 이후의 값을 _GET형태로 변수로 저장을 합니다. ID = namgoos 이니깐 user db 에 namgoos를 쿼리를 날려서 user의 member.seqno를 받아 /pims/main/pims_main.asp?tid=UID_CODE 형태로 새창을 열어 로드를 하고 로드가 되면 처음에 열었던 Parent Window는 cyworld.com 초기 화면으로 넘어 가게 되는 것이죠.
자..그러면 왜 TT(*테터)외 기타 블로그에서 FancyUrl을 쓰는 목적이 무엇이냐..??
물론 Article의 주소를 쉽게 기억하기 위함도 있지만 한글 처리의 문제가 있겠죠? 그래서 사실상 외국 블로깅툴을 보면 FancyUrl의 목적은 검색엔진의 노출에 관련이 깊습니다. 즉 SEO TOOL로서 비중이 크다고 할 수 있겠습니다.
야후 및 구글은 URL에 ?/& 형태의 파라미터 연결 기호의 URL을 검색 INDEX에서 제외를 시켜 버럽니다. 그래서 FancyUrl은 마치 파일의 URL처럼 검색엔진 크롤러가 인식하기 때문에 IDNEX에 추가가 되겠죠? 하지만 프로그램을 돌려 상위에 위치하고 싶은 몇몇 분들의 장난을 원천 봉쇄하기 위함이나 기존에 돈내고 스폰서 링크에만 신경쓰는 국내 기업에서는 크게 와닿지 않는 부분이나 해외의 경우 절대적인 마케팅 수단입니다.
EX)구굴의 SITEMAP 크롤링 통계 내용
이 통계는 크롤링한 페이지에 대한 배포 정보를 제공합니다. PageRank 배포는 홈페이지뿐 아니라 사이트 내의 모든 크롤링된 페이지를 반영합니다.
최고의 PageRank 페이지
3월 http://www.namgoos.com/index.php/archive/category
2월 http://www.namgoos.com/index.php/archive/category
1월 http://www.namgoos.com/
그럼 이런 형태의 FancyUrl을 Apache의 Mod_Rewrite없이 구현을 해볼까요..? 저도 값을 받는 것을 몰라 miniwini.com에 물어 봤더니 바로 답변을 주셔서 그걸 가지고 응용해서 만든 것입니다.
// fancy url - 넘겨 받은 값을 archiv 배열로 모두 치환
$realUrl = str_replace($_SERVER['SCRIPT_NAME'], '', $_SERVER['REQUEST_URI']);
$arrFancyUrl = explode('/', $realUrl);
만약에 블로그 엔트리의 주소가 http://www.namgoos.com/index.php/archive/32 라면 index.php 는 $arrFancyUrl[1] 에 저장 되고 archive는 $arrFancyUrl['2'] 32는 $arrFancyUrl['3'] 에 순서 대로 저장이 되겠죠? 이런 형태로 값을 받은 것을 각각의 변수에 할당 하여 사용하면 됩니다.
예를 들면 쇼핑몰의 상품 페이지의 주소가 http://wishwish.co.kr/goods.php?id=32323&category=1001&view=1 이런 형태라면 누군가 wishlist에 상품을 정보를 링크를 걸어 두지만 구글은 그 wishlist의 페이지를 크롤링하다가 위의 주소는 그냥 INDEX하지 않고 넘거 가버립니다.
하지만 http://wishwish.co.kr/goods.php/id/32323/category/1001/view/1 이 형태로 한 결과 구글에서는 사이트의 문서 파일로 인식하고 INDEX에 추가를 합니다.
적당히 홍보 및 마케팅으로는 좋은 거 같으니 한번 구현 해보실 분들은 해보시기 바랍니다. 사실 일본에 있을 때 일본 친구들이 가르쳐 준거인데 우리나라를 제외하고는 거의 SEO에 목숨을 거는 WEB MASTER가 많다는 걸 깨우쳐 줬습니다.
| swig... (0) | 2007/07/03 |
|---|---|
| 최고의 PHP FRAMEWORK CODE IGNITER (0) | 2007/05/23 |
| PHP에서 XML Parsing 주의 사항 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #2 (0) | 2007/05/04 |
| 프로그램 코딩 스타일 이야기 #1 (0) | 2007/05/04 |
| fancyURL로 구글 검색에 잘 걸리게 하는 방법 (3) | 2007/05/04 |