작고 매우 구체적인 응용 프로그램 별 CMS를 만들고 있습니다. 재정적 인 일은 없으며 콘텐츠는 민감하지 않습니다. (대부분 예술 작품 간의 관계를 관리하는 것이기 때문에) 보안은 최우선 순위는 아니지만 여전히 사용자 그룹을 관리하는 로그인 시스템을 사용하고 있습니다. 각 설치.사이트 전체 테스트를위한 모범 사례 및 로그인 상태에 대한 반응
입력 페이지에는 로그인 양식이 있습니다. 성공하면 세션 변수가 사용자 테이블의 PK로 설정되고 임의의보기 페이지로 리디렉션됩니다. 이 변수는 해당 사용자가 변경 한 내용을 추적하는데도 사용됩니다.
저는 세션 변수가 설정되어 있는지 확인하는 작은 스크립트를 모든 페이지에 auto_prepending하고 있습니다. 그렇지 않은 경우 사용자는 로그인 페이지로 다시 반송됩니다. 이것은 작동하지만 서투른 것 같다 - 내가 '면제'로그인 페이지로 필요 특히 때문에, 그래서 기본적으로 이것이다 못생긴 작은 해킹, 사용 : 실제 스크립트
if(!isset($_SESSION['user']) && strpos($_SERVER['PHP_SELF'], '/login.php') !== 0) {
header('Location: /login.php');
}
위
가 단순화 조금, 기본적으로 어떤 일이 벌어지고 있는지 보여줍니다.
내가 지금하고있는 일이 실제로 효과가있다. (내가 준 예제는 무너졌고, auto_prepend는 다른 것들에 사용되어서 나는 단지 피기 백킹을하고있다.) 그리고 당신은 이것이 ' 본질적으로 질문이었습니다 - 빠른 답장을 보내 주셔서 감사합니다. – momo