그누보드 최신버전 (5.1.0) 살펴보기 - common.php (5)
common.php 그누보드에서 가장 기본이 되는 파일이라고 볼수 있습니다.
모든 파일에 기본적으로 인클루드 되어서 사용됩니다.
에러출력 설정, 보안적인 처리, 기본적인 경로 설정, 디비연결, 세션 설정및 시작, 공용변수의 초기화 및 재설정, 기타 확장 등의 내용으로 이루어져 있습니다.
@ini_set("session.use_trans_sid", 0);
@ini_set("url_rewriter.tags","");
session_save_path(G5_SESSION_PATH);
if (isset($SESSION_CACHE_LIMITER))
@session_cache_limiter($SESSION_CACHE_LIMITER);
else
@session_cache_limiter("no-cache, must-revalidate");
ini_set("session.cache_expire", 180);
ini_set("session.gc_maxlifetime", 10800);
ini_set("session.gc_probability", 1);
ini_set("session.gc_divisor", 100);
session_set_cookie_params(0, '/');
ini_set("session.cookie_domain", G5_COOKIE_DOMAIN);
@session_start();
ini_set 은 php.ini 에 설정할수 있는 환경설정값을 php 실행시에 현재 접속에 대해서만 설정 하는 함수 입니다.
이 함수는 서버의 설정에 따라 사용이 금지 되어 있을수도 있고, php 버전에 따라 설정할수 있는 옵션의 차이도 있을수도 있습니다.
따라서 @를 항상 앞에 붙이는 것이 좋다고 보여집니다.
http://php.net/manual/kr/function.ini-set.php
string ini_set ( string $varname , string $newvalue )
세션 관련 환경 설정값은
http://php.net/manual/kr/session.configuration.php
에 잘 나와있습니다.
session.use_trans_sid -> url 을 통해서 세션아이디(기본 - PHPSESSID) 를 전달 할수 있느냐 여부, false(0) 은 불가 true(1) 은 가능
보안상 크게 좋을것이 없으므로 0 또는 false 를 설정합니다.
url_rewriter.tags -> php 가 html 출력시에 세션아이디(기본 - PHPSESSID) 를 각 태그의 src 나 href 같은 속성에 자동으로 넣을수 있도록 설정하는 것입니다.
보안상 크게 좋을것이 없으므로 아무값도 설정하지 않습니다.
session.save_path -> 세션을 저장하는 매체를 파일로 사용중일 경우, 세션파일이 저장될 기본 위치를 지정합니다.
session_save_path() 함수를 통해 설정가능하므로, 그누보드에서는 session_save_path() 을 사용
session.cache_limiter -> 세션을 사용하는 페이지의 캐시 제어 방법을 지정, nocache, private, private_no_expire, public 중 하나 사용가능
session_cache_limiter() 함수를 통해 설정가능하므로, 그누보드에서는 session_cache_limiter() 을 사용
그런데, http://php.net/manual/kr/function.session-cache-limiter.php 에서 보는 바와 같이 같은 하나만 설정할수 있으므로
@session_cache_limiter("no-cache, must-revalidate"); 은 잘 못 되었고,
@session_cache_limiter("nocache"); 와 같이 사용하는 것이 맞습니다.
nocache 로 설정했을때 출력되는 헤더, 캐시 사용하지 않음
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
public 로 설정했을때 출력되는 헤더, 캐시 프록시, 클라이언트 모두 사용
Cache-Control: public, max-age=10800
private 로 설정했을때 출력되는 헤더, 캐시 클라이언트만 사용
Cache-Control: private, max-age=10800, pre-check=10800
session.cache_expire -> 세션을 사용하는 페이지의 캐시가 살아있을 시간을 분으로 설정, session_cache_limiter("nocache"); 일때는 의미가 없습니다.
출력되는 헤더 중 Cache-Control 에 max-age=(session.cache_expirer값 * 60), pre-check=(session.cache_expirer값 * 60) 와 같이 추가로 나옵니다.
session.gc_maxlifetime -> 세션을 파일로 사용 할경우 세션파일을 지울 시간을 초로 설정, 디비로 사용할 경우라면 해당 로우를 지울 시간을 초로 설정, 접속이 종료되고 난 이후에 동작합니다.
윈도우에서 세션을 파일로 사용할 경우에는 파일의 atime(수정시간)을 알수 없으므로 의미 없습니다.
session.gc_probability -> 이미 session.gc_maxlifetime 초를 지난 세션을 수거하는 확률을 지정, 분자에 해당
1 을 설정하면 session.gc_divisor분의 1 즉, session.gc_divisor 을 100로 설정했다면, 실행시 1%의 확률로 동작합니다.
session.gc_divisor -> 이미 session.gc_maxlifetime 초를 지난 세션을 수거하는 확률을 지정, 분모에 해당
100 을 설정하면 100분의 session.gc_probability 즉, session.gc_probability 을 1로 설정했다면, 실행시 1%의 확률로 동작합니다.
session.cookie_domain -> 세션 쿠키를 공유할 도메인 설정, 도메인 앞에 . 을 붙여 설정하면 그 도메인의 서브도메인과도 세션 쿠키가 공유됩니다.
void session_set_cookie_params ( int $lifetime [, string $path [, string $domain [, bool $secure [, bool $httponly ]]]] )
첫번째 인자 $lifetime 은 session.gc_maxlifetime 와 같은 의미입니다. session.gc_maxlifetime와 같게 설정하면 됩니다.
두번째인자 $path 는 세션쿠키가 작동할 도메인의 경로. 도메인의 모든 경로에 적용하려면 하나의 슬래시('/')를 사용합니다.
세번째인자 $domain 은 session.cookie_domain 와 같은 의미입니다.
네번째인자 $secure 는 true 설정시 세션쿠키는 안전한 접속으로만 전송됩니다.
다섯번째인자 $httponly 는 true 설정시 헤더의 쿠키 부분에 httponly 라고 같이 전송됩니다.
$path, $domain, $secure, $httponly 생략가능합니다.
댓글 5개
게시판 목록
프로그램
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 7630 | 10년 전 | 657 | ||
| 7629 |
|
10년 전 | 2401 | |
| 7628 | 10년 전 | 795 | ||
| 7627 |
|
10년 전 | 1039 | |
| 7626 |
|
10년 전 | 1795 | |
| 7625 | 10년 전 | 720 | ||
| 7624 | 10년 전 | 735 | ||
| 7623 |
|
10년 전 | 3103 | |
| 7622 | 10년 전 | 736 | ||
| 7621 |
leeleeleelee
|
10년 전 | 591 | |
| 7620 | 10년 전 | 543 | ||
| 7619 | 10년 전 | 497 | ||
| 7618 | 10년 전 | 1032 | ||
| 7617 | 10년 전 | 729 | ||
| 7616 | 10년 전 | 658 | ||
| 7615 | 10년 전 | 732 | ||
| 7614 | 10년 전 | 1271 | ||
| 7613 |
|
10년 전 | 2086 | |
| 7612 | 10년 전 | 1155 | ||
| 7611 | 10년 전 | 1423 | ||
| 7610 |
|
10년 전 | 1908 | |
| 7609 |
|
10년 전 | 1358 | |
| 7608 |
mwdkim
|
10년 전 | 1139 | |
| 7607 |
|
10년 전 | 1059 | |
| 7606 |
mwdkim
|
10년 전 | 3941 | |
| 7605 | 10년 전 | 695 | ||
| 7604 | 10년 전 | 1032 | ||
| 7603 | 10년 전 | 1658 | ||
| 7602 |
|
10년 전 | 1082 | |
| 7601 |
AniNest
|
10년 전 | 2798 | |
| 7600 |
port443
|
10년 전 | 1040 | |
| 7599 | 10년 전 | 951 | ||
| 7598 | 10년 전 | 1029 | ||
| 7597 | 10년 전 | 4580 | ||
| 7596 |
SeungYeon
|
10년 전 | 898 | |
| 7595 |
untitled
|
10년 전 | 2431 | |
| 7594 |
프로그래머7
|
10년 전 | 1742 | |
| 7593 |
untitled
|
10년 전 | 2386 | |
| 7592 |
untitled
|
10년 전 | 1949 | |
| 7591 |
untitled
|
10년 전 | 2681 | |
| 7590 |
아리마2001
|
10년 전 | 857 | |
| 7589 | 10년 전 | 1116 | ||
| 7588 |
|
10년 전 | 2925 | |
| 7587 | 10년 전 | 1312 | ||
| 7586 | 10년 전 | 676 | ||
| 7585 | 10년 전 | 1701 | ||
| 7584 | 10년 전 | 1416 | ||
| 7583 |
leeleeleelee
|
10년 전 | 1169 | |
| 7582 |
|
10년 전 | 1124 | |
| 7581 | 10년 전 | 1362 | ||
| 7580 | 10년 전 | 1013 | ||
| 7579 |
|
10년 전 | 611 | |
| 7578 | 10년 전 | 1434 | ||
| 7577 |
|
10년 전 | 1878 | |
| 7576 | 10년 전 | 1392 | ||
| 7575 |
멋진남자임
|
10년 전 | 1470 | |
| 7574 | 10년 전 | 2125 | ||
| 7573 | 10년 전 | 3260 | ||
| 7572 | 10년 전 | 765 | ||
| 7571 |
|
10년 전 | 786 | |
| 7570 |
|
10년 전 | 1321 | |
| 7569 | 10년 전 | 1556 | ||
| 7568 |
this1mg
|
10년 전 | 1055 | |
| 7567 |
|
10년 전 | 770 | |
| 7566 | 10년 전 | 921 | ||
| 7565 |
Angel하늘
|
10년 전 | 1014 | |
| 7564 |
seoldi
|
10년 전 | 1253 | |
| 7563 |
|
10년 전 | 1395 | |
| 7562 |
멋진남자임
|
10년 전 | 2095 | |
| 7561 | 10년 전 | 717 | ||
| 7560 |
leeleeleelee
|
10년 전 | 917 | |
| 7559 | 10년 전 | 5055 | ||
| 7558 |
RinaP
|
10년 전 | 790 | |
| 7557 |
|
10년 전 | 1256 | |
| 7556 | 10년 전 | 1199 | ||
| 7555 |
hyohyojj1234
|
10년 전 | 1671 | |
| 7554 | 10년 전 | 1101 | ||
| 7553 |
senseme
|
10년 전 | 1342 | |
| 7552 |
ehdltdoit
|
10년 전 | 1442 | |
| 7551 |
|
10년 전 | 1833 | |
| 7550 |
leeleeleelee
|
10년 전 | 1595 | |
| 7549 | 10년 전 | 2435 | ||
| 7548 | 10년 전 | 1850 | ||
| 7547 |
멋진남자임
|
10년 전 | 1968 | |
| 7546 | 10년 전 | 1011 | ||
| 7545 |
ILMare1003
|
10년 전 | 1296 | |
| 7544 |
|
10년 전 | 1258 | |
| 7543 | 10년 전 | 893 | ||
| 7542 | 10년 전 | 665 | ||
| 7541 |
울라라라우
|
10년 전 | 871 | |
| 7540 | 10년 전 | 1603 | ||
| 7539 | 10년 전 | 944 | ||
| 7538 |
|
10년 전 | 1837 | |
| 7537 | 10년 전 | 3618 | ||
| 7536 |
Gaumi
|
10년 전 | 1419 | |
| 7535 |
프로그램은어려워
|
10년 전 | 1281 | |
| 7534 |
senseme
|
10년 전 | 1210 | |
| 7533 | 10년 전 | 1208 | ||
| 7532 | 10년 전 | 868 | ||
| 7531 | 10년 전 | 2062 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기