[카테고리:] 웹프로그래밍

  • mysql 날짜 범위 검색

    SELECT * FROM table WHERE regdate between date_sub(now(), interval 3 month) and now() 이런식으로 3개월 전부터 현재까지의 데이터를 조회. regdate 컬럼은 timestamp, datetime 이고 인덱스가 걸려있다.

  • Tomcat server clustering with apache

    톰캣 서버 설치 및 클러스터링 일단 java를 설치한다. sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get install oracle-java8-installer oracle-java8-set-default 만약 여러개 설치 된 경우엔 sudo update-alternatives –config java 이걸로 디폴트를 잡아주면 됨.   tomcat을 받아서 압축을 풀어놓고, 클러스터링 할 만큼 복사 한다. cp tomcat9 ctest1 cp tomcat9 ctest2 2개를 복사한 후 ctest(*) 폴더안에 conf를 제외한 […]

  • [WordPress] 현재 글의 이전글 다음글을 여러개 가져오기.

    현재 글의 이전글 다음글을 여러개 가져오기. 워드프레스는 게시판이 아니다보니 현재글의 바로 다음글, 이전글로는 이동할 수는 있어도, 게시판 리스트처럼 보이는 부분이 없다. function get_post_siblings( $limit = 3, $date = ” ) { global $wpdb, $post; if( empty( $date ) ) $date = $post->post_date; $limit = absint( $limit ); if( !$limit ) return; $p = $wpdb->get_results( ” […]

  • [PHP] Tistory API

    # README # php가 필요함. tistory의 아이디가 필요함. git clone https://github.com/adiy21c/Tistory.git 수정, 개량을 한 경우 저도 좀….-_- ### What is this repository for? ### Tistory API ### How do I get set up? ### setup.php 를 수정. 1. www.tistory.com/guide/api/manage/list 에서 api client id를 발급받는다. 2. (setup.php) client_id, client_secret을 발급받아 입력하고, redirect_uri를 수정한다. 3. 브라우저로 get_authcode.php […]

  • [WordPress] 워드프레스 검색 결과에서 보여줄 글의 수

    워드프레스에서 검색을 하게 되면 읽기설정에서 지정해준 페이지당 보여줄 글의 수 만큼만 보여지게 된다. 그래서 검색이 상당히 불편해지게 되는데 웃기는게 일반 글을 볼 때와 검색할 때 사용할 변수를 따로 지정할 수가 없다.   이를 위해서 보통 테마의 search.php 에서 posts_per_page를 변경 한 후 다시 요청하게 하는데, 이렇게 하면 검색 쿼리를 두번 하게 된다. 비효율적이게 되는 것이다. […]

  • [CSS] 특정 엘리먼트의 다음 엘리먼트 찾기

    가끔 엘리먼트를 선택할때 특정짓기 애매한 경우가 있다. 클래스나 ID가 랜덤 생성 된다거나 하는 경우인데, 이럴땐 그 위의 다른 엘리먼트를 우선 찾아서 + 를 사용해서 다음 엘리먼트를 찾아주면 된다. div.prev + div 를 하면  div.prev의 다음 div가 선택되게 된다.

  • [jQuery] .focus() 가 firefox에서 잘 동작하지 않을때.

    포커싱을 강제적으로 이동시키고 싶은데 크롬에서는 잘되는 구문이 파이어폭스에서만 잘 되지 않았다. 그래서 검색을 해봤더니 $(‘#target’).focusout(function() { setTimeout(function() { $(this).focus(); }, 0); }); 요렇게 해주면 파이어폭스에서도 잘 동작한다.

  • tablesorter 로 table 정렬을 해보자.

    서버사이드에서 미리 정렬을 해서 결과를 출력할 수도 있지만  이미 출력된 클라이언트 사이드에서 정렬을 할 수 있으면 페이지를 새로 고침하지 않아도 되므로 추가적인 데이터 전송이 필요 없으므로 더 빠르게 재정렬이 가능하다. jquery plugin중 하나인 tablesorter를 사용하면, 간단히 class를 추가하는 것만으로도 기본적인 정렬기능을 사용할 수 있다. http://tablesorter.com 사용법은 매우 간단하다. jquery와 tablesorter 파일을 로드 하고 table에 tablesorter라는 […]

  • TOMCAT에서 image나 js, css 같은 파일 캐싱하기.

    필터 설정을 통해 정적 파일들을 캐싱해보자. <filter> <filter-name>ExpiresFilter</filter-name> <filter-class>org.apache.catalina.filters.ExpiresFilter</filter-class> <init-param> <param-name>ExpiresByType image</param-name> <param-value>A2592000 </param-value> </init-param> <init-param> <param-name>ExpiresByType text/css</param-name> <param-value>A1800</param-value> </init-param> <init-param> <param-name>ExpiresByType application/javascript</param-name> <param-value>A1800</param-value> </init-param> </filter> <filter-mapping> <filter-name>ExpiresFilter</filter-name> <url-pattern>/*</url-pattern> <dispatcher>REQUEST</dispatcher> </filter-mapping> web.xml의 <web-app></web-app> 사이에 넣어주면 된다.

  • [JAVA] Tomcat8 구동 시 엄청나게 느린 경우 해결.

    오랫동안 사용하던 Tomcat6이 아무래도 걸려서 Tomcat8으로 업그레이드를 하기 위해 테스트 서버에서 설치 후 이것저것 살펴보고 있었다.  그런데 Tomcat8으로 올린 후 시동을 하면 거의 5분 가까이 로딩을 하고 있었다. 성능문제는 아니라고 판단되어 로그를 계속 살펴보다보니  INFO [localhost-startStop-1] org.apache.catalina.util.SessionIdGeneratorBase.createSecureRandom Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [238,198] milliseconds. 라는 부분이 보였다.  검색을 해보니 -Djava.security.egd=file:/dev/./urandom […]