티스토리 뷰
session_save_path)(
session_start()
session_set_cookie_params();
PHP파일을 통해 php.ini설정을 수정하려면 ini_set()함수를 사용하면 됩니다.
php.ini 설정에서 session.use_strict_mode = 1로 설정되어 있다면 Session ID가 영구적으로 사용될 수 있습니다. 이렇게 될 경우 공격자가 세션 ID 훔쳐와 사용할 수 있기 때문에 해당설정은 0으로 꺼두는 것이 좋습니다.
session.use_only_cookies는 쿠키로면 session ID 를 사용하도록 하는 것으로 URL의 GET 값으로 PHPSESSID가 전달되는 것을 지원하지 않게 합니다. 해당 설정은 1로 켜주세요.
session.cookie_httpOnly는 Javascript Injection을 통해 클라이언트의 Session ID가 노출 될 수 있으므로 1로 켜서 막아주어야 합니다.
session.cookie_secure설정은 https를 사용할 때 사용하는 것이 좋습니다.
세션에는 쿠키와 마찮가지로 유효기간이 있습니다. 이 유효기간이 만료되면 GC에 의해서 삭제되게 됩니다.
이러한 설정은 php.ini에서 session.gc로 시작되는 설정들입니다.
session.gc_maxlifetime이 바로 유효기간으로 설정은 초단위 정수로 전달됩니다.
- session_set_cookie_params()
- session_gc()
session_gc는 유효기간이 만료된 세션들을 정리해주는 함수이지만 session_gc의 수행은 완벽하지 않기 때문에 해당 작업을 온전히 믿어서는 안됩니다.
ini_set('session.gc_maxlifetime',10);
session_set_cookie_params(10);
session_start();
session_gc();
일반적으로는 session_gc를 주기적으로 수행하도록해 세션 파일들을 정리해줍니다.
타임 스템프를 활용한 세션 관리
session_save_path(dirname(__DIR__) . '/sessions');
session_start();
$_SESSION['timestamp'] = $_SERVER['REQUEST_TIME'];
$time = strtotime('+10 seconds');
$diff = $time - $_SESSION['timestamp'];
$sessionTimeOut = 10;
if ($diff >= $sessionTimeOut) {
/*
~세션을 파괴 후 기타 작업 진행 (php 가이드라인에서 권장하지 않음)
*/
/* 세션 재설정 방법 */
session_regenerate_id();
$_SESSION['timestamp'] = time();
exit;
}
세션과 관련한 전반적인 설정과 관련 함수는 아래 메뉴얼을 참고해주세요.
http://docs.php.net/manual/en/session.configuration.php
PHP: Runtime Configuration - Manual
Being unable to find an actual copy of mod_files.sh, and seeing lots of complaints/bug fix requests for it, here's one that works. It gets all its parameters from PHP.INI, so you don't have the opportunity to mess up:#!/bin/bash## Creates directories for
docs.php.net
'오늘도 개발자 > PHP' 카테고리의 다른 글
[PHP] php.ini (PHP 환경설정) (0) | 2022.02.17 |
---|---|
[PHP] 보안 - XSS(Cross Site Scripting) & CSRF (0) | 2022.02.02 |
[PHP] 사전 정의된 변수(Predefined Variables) (0) | 2022.02.02 |
[PHP] 파일(file) (0) | 2022.01.31 |
[PHP] 에러 리포팅(Error Reporting) (0) | 2022.01.31 |
- Total
- Today
- Yesterday
- Theme Customization
- 이전설치
- WordPress
- 빛의성당
- wp-members
- 도스 코파스
- Sanitize
- 빈화면
- 한빛미디어
- 철거
- 썸머노트
- 라이트세일
- 워드프레스
- 고흐1인칭시점
- wordpress #워드프레스 #url
- URL인코딩
- FTP권한문제
- 11번가 아마존 #우주패스 #우주쓰레기
- 스프레드연산자
- 사용자정의하기
- CSPRNG
- url복사
- Lighitsail
- ontent
- 코스모스팜
- php
- MySQL
- URL디코딩
- 지대공
- 이사
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |