티스토리 뷰

반응형

질문

안녕하세요. 가비아 웹호스팅을 사용하고 있습니다.

코드를 넣으니 계속 오류가 발생해서 첨부파일로 이미지로 넣었습니다.

이렇게 해서 질문을 했지요~

게시판 오류가 엄청 나서.. 이미지로 만들어서 올림.. ㅎ

 

 

가비아의 답변은 그래도 도움이 많이 될 것 같고... 이걸 찾는 분들이 많을 것 같아서 

글로 올려봅니다.

 

답변

안녕하십니까? 가비아 입니다.

가비아 웹호스팅의 세션 기본 설정 값은 아래와 같습니다.

session.cache_expire 180(3분)

session.gc_maxlifetime 1440(24분)



최상위 경로(홈 디렉토리)의 .htaccess 파일 내에 아래 구문 삽입하면 최댓값으로 이용할 수 있습니다.

홈페이지 소스에 대한 적용은 직접 진행해주셔야 하는 점 서비스 이용에 참고하여주시기 바랍니다.



php_value session.gc_maxlifetime 86400

php_value session.cache_expire 86400



최대 설정한 값을 초과하는 값으로 설정시 기본 호스팅 설정 값(master value)이 적용됩니다.


다른 궁금하신 사항이나 불편 사항이 있으시면, 고객센터(1544-4370)로 문의하시기 바랍니다.
(고객센터 운영 시간 : 09:00 ~ 18:00(주말, 공휴일 제외))
앞으로도 가비아는 더 나은 서비스를 제공하기 위해 항상 노력하겠습니다.
가비아 서비스를 이용해 주셔서 감사합니다.

<?php
// 세션을 시작하거나 기존 세션을 재개합니다.
session_start();

// 세션의 만료 시간을 확인합니다.
$expiryTime = ini_get('session.gc_maxlifetime');
$remainingTime = 0;

// 세션의 만료 시간과 현재 시간을 비교하여 남은 시간을 계산합니다.
if (isset($_SESSION['LAST_ACTIVITY'])) {
  $lastActivity = $_SESSION['LAST_ACTIVITY'];
  $currentTime = time();
  $elapsedTime = $currentTime - $lastActivity;
  
  if ($elapsedTime < $expiryTime) {
    $remainingTime = $expiryTime - $elapsedTime;
  }
} else {
  // 'LAST_ACTIVITY' 세션 변수가 정의되지 않은 경우, 기본값으로 남은 시간을 설정할 수 있습니다.
  // 예를 들어, 1시간(3600초)로 설정할 경우:
  // $remainingTime = 3600;
}

// 세션의 남은 시간을 반환합니다.
echo $remainingTime;

위는 실제 php코드에서 확인하는 방법

 

php .htacess  파일내용..

# HTID:11765931: DO NOT REMOVE OR MODIFY THIS LINE AND THE LINES BELOW
php_value display_errors 1
php_value session.gc_maxlifetime 86400
php_value session.cache_expire 86400
# DO NOT REMOVE OR MODIFY THIS LINE AND THE LINES ABOVE HTID:11765931:

# CORS-enabled images & webfonts / Access-Control-Allow-Origin 관련 패치
<IfModule headers_module>
  <IfModule setenvif_module>
    <FilesMatch "\.(gif|png|jpe?g|svgz?|ico|webp)$">
      SetEnvIf Origin ":" IS_CORS
      Header set Access-Control-Allow-Origin "*" env=IS_CORS
    </FilesMatch>
  </IfModule>
  <FilesMatch "\.(ttf|ttc|otf|eot|woff2?|css|js)$">
    Header set Access-Control-Allow-Origin "*"
  </FilesMatch>
</IfModule>

Header set Access-Control-Allow-Origin *
Header set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"

 

주어진 .htaccess 파일에 php_value session.gc_maxlifetime 86400와 php_value session.cache_expire 86400를 추가하면 됩니다. 이렇게 설정하면 세션의 최대 수명과 캐시 만료 시간이 86400(24시간)으로 설정됩니다.
위 구문을 추가한 후 웹사이트를 다시 로드하면 변경된 세션 설정 값이 적용될 것입니다.
추가로, 주의해야 할 점은 가비아 웹호스팅에서 제공하는 세션 설정 값은 서버의 기본 설정이기 때문에, 이 값을 변경하여도 실제로 사용되는 세션 설정 값이 변경되지 않을 수 있다는 점입니다. 따라서, 이 값을 직접 설정하는 것이 중요합니다.

htaccess 파일을 수정하면 서버를 다시 재부팅해야 하나?

일반적으로 `.htaccess` 파일을 수정했을 때에는 서버를 다시 재부팅할 필요가 없습니다.
`.htaccess` 파일은 웹 서버 소프트웨어인 Apache에서 요청을 처리하는 동안에 파일의 내용을 확인하고 적용합니다.

`.htaccess` 파일을 수정한 후 변경 사항이 즉시 적용되기 위해서는 몇 가지 사항을 고려해야 합니다:

1. 파일 경로와 이름이 정확한지 확인하세요: `.htaccess` 파일은 웹 서버의 루트 디렉토리 또는 해당 디렉토리의 하위 디렉토리에 있어야 합니다. 파일 이름이 올바르고 파일이 존재하는지 확인하세요.

2. 웹 서버가 `.htaccess` 파일을 읽도록 설정되어 있는지 확인하세요: Apache 웹 서버의 기본 설정에서 `.htaccess` 파일을 읽도록 허용하는 설정이 활성화되어야 합니다. 일반적으로 `AllowOverride` 디렉티브를 사용하여 `.htaccess` 파일을 허용하도록 설정합니다. 서버 설정 파일(`httpd.conf` 또는 `apache2.conf`)에서 이를 확인하고 설정해야 합니다.

3. 웹 서버의 캐시를 비우세요: 웹 서버가 이전에 로드한 `.htaccess` 파일을 캐시로 저장할 수 있습니다. 변경 사항이 즉시 반영되지 않을 수 있으므로, 웹 서버의 캐시를 비우고 새로고침하여 변경 사항을 확인하세요. 캐시를 비우는 방법은 서버 설정에 따라 다를 수 있습니다. 일반적으로 위의 사항을 확인하고 `.htaccess` 파일을 수정한 후에는 변경 사항이 즉시 적용됩니다. 서버를 재부팅할 필요는 없습니다. 그러나 웹 서버와 설정에 따라 다소 차이가 있을 수 있으므로, 변경 사항이 적용되지 않는 경우 서버나 설정을 확인하는 것이 좋습니다.

 

웹캐시를 비우는 방법

웹 캐시를 비우는 방법은 웹 서버나 브라우저에 따라 다를 수 있습니다.
아래에서는 일반적인 방법 몇 가지를 안내해 드리겠습니다.

1. 웹 브라우저 캐시 비우기: - 대부분의 웹 브라우저는 개발자 도구(개발자 콘솔)를 통해 캐시를 비울 수 있는 옵션을 제공합니다. 보통 `Ctrl + Shift + Delete` 키를 누르거나 브라우저 메뉴의 설정 옵션에서 찾을 수 있습니다. - 캐시 삭제 옵션을 선택하고 브라우저 캐시와 쿠키를 지우는 것으로 시작합니다.

2. 웹 서버 캐시 비우기: - 웹 서버의 캐시를 비우기 위해서는 해당 서버의 관리 인터페이스 또는 명령어를 사용해야 합니다. - Apache 웹 서버의 경우, `.htaccess` 파일의 수정 사항이 즉시 반영되지 않을 때는 `service apache2 restart`(Linux) 또는 `httpd -k restart`(Windows)와 같은 명령어를 사용하여 웹 서버를 재시작할 수 있습니다. - Nginx 웹 서버의 경우, `service nginx restart`(Linux) 또는 `nginx -s reload`와 같은 명령어를 사용하여 웹 서버를 재시작할 수 있습니다.

3. 캐시 버스팅(Cache busting): - 캐시 버스팅은 웹 페이지에서 정적 리소스(예: CSS, JavaScript, 이미지 파일)의 URL을 변경하여 새로운 버전으로 인식되도록 하는 방법입니다. 이를 통해 웹 브라우저는 새로운 버전의 파일을 가져오게 되어 이전 캐시된 파일을 사용하지 않습니다. - 캐시 버스팅을 위해서는 정적 리소스의 URL에 고유한 쿼리 매개변수를 추가하거나 파일 이름을 변경하는 방식을 사용할 수 있습니다.

예를 들어, `style.css` 파일을 `style.css?v=12345`와 같이 수정하면, 브라우저는 이를 새로운 파일로 인식하고 이전 캐시를 우회합니다. 위의 방법들은 일반적인 캐시 비우기 절차입니다. 하지만 웹 서버와 브라우저에 따라 차이가 있을 수 있으므로, 사용하는 환경에 맞게 적절한 방법을 선택하시기 바랍니다.

 

반응형
댓글