문제

더 강력한 액세스 요구 사항이 있는 하위 디렉터리가 있는 인증된 웹 사이트가 있습니다.메인 웹사이트에는 누구나 등록할 수 있지만, 하위 디렉토리에는 사이트 관리자만 로그인할 수 있습니다.현재 기본 사이트와 하위 디렉터리에는 각각 고유한 사이트가 있습니다. application.cfm 파일 및 로그인 페이지.

최근 ColdFusion 8에서 CF 10으로 업데이트했으며 다음 작업을 수행해야 했습니다. 내 세션 처리를 많이 재구성하고 있습니다..저는 이제 사용자가 사이트를 이동할 때 세션을 유지하는 데 도움이 되도록 세션 전용 쿠키를 사용하고 있습니다.

CF 10의 이러한 동작 변경으로 인해 기본 웹 사이트에도 등록된 사이트 관리자가 두 응용 프로그램 사이를 오가면 세션이 뒤섞일까 걱정됩니다(예: 응용 프로그램을 복제할 수 있는지 확인하기 위해). 사용자의 문제를 확인하거나 메인 사이트에 로그인한 동안 데이터베이스 세부 정보를 조회할 수 있습니다.

기본 사이트와 하위 디렉터리 모두에 대한 자격 증명은 동일한 사용자 데이터베이스에서 나오며 사이트 관리자는 추가 액세스를 허용하는 플래그를 가지고 있습니다.사용자가 기본 사이트나 하위 디렉터리에 로그인했는지 확인하고 위치가 변경되면 적절하게 지시하는 스크립트를 쉽게 작성할 수 있습니다.

결론적으로, CF 10 세계에서는 잠시 시간이 필요할까요? application.cfm, 그리고 이어서 해당 하위 디렉터리에 대한 두 번째 세션 변수 세트?

(메모: 둘 다 봤는데 Coldfusion 교차 사이트 인증 그리고 application.cfm에 여러 cf응용프로그램이 있을 수 있습니까? 항목이 있고 여기에 좋은 것이 많이 있지만 내 질문에 제대로 대답하지 않습니다.)

도움이 되었습니까?

해결책

아니요, 여러 응용 프로그램 .cfm / cfc 파일을 가질 필요가 없습니다.첫 번째를 가질 필요가 없습니다.그러나 반드시 여러 가지가 아님이 아닙니다.여러분이 여러 개인 경우, 목표에 유익한 경우, 하위 디렉토리에 대해 다른 OnError 및 OnRequest 처리를 할 수 있습니다.

Main Application and Admin 영역간에 분리되지 않고 내 응용 프로그램 라우팅 / 인증 / 오류 처리가 전면으로 완료되도록 하나의 Application.cfc 만 사용하는 것을 선호합니다. 여러 세션을 처리 할 필요가 없습니다.사용자 당.

다른 팁

당신이 가지고 있다면 session 변수 application.cfm 에서 parent directory, 넌 그냥 할 수 있어 <cfinclude> 그것은 application.cfm 제출하다 subdirectory.따라서 하위 디렉터리의 파일에도 동일한 세션 값을 가질 수 있습니다.

application.cfm ~에 subdirectory:

<cfinclude template="/home_directory/application.cfm" />

메모:여기서는 사용할 필요가 없습니다 <cfapplication> 꼬리표.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top