서브 폴더에 웹 구축시 SSL 경로 오류 개선

· 2009-05-21 (목) 16:35:40 · 3192 · 1

현제 그누나 영카드 모두 다 서버의 로컬에 폴더를 생성 후 그 폴더를 로컬로 사용 해 여러개의 웹을 한개의 서버에 구축 했을 시 SSL서버를 설치 하면 필히 경로 오류가 납니다.
물론 ssl가 로컬에서부터 적용 된다면 하위폴더이므로 걱정 할 게 없지만, 도메인만 독립시키는 경우가 발생 할때는 필이 이와같은 오류를 경험하시게 될 것입니다.
경로 오류의 형식은 아래와 같습니다.

도메인/서브폴더/서브폴더/웹.php 

여기서 서브폴더는 한개만 출력 되야 하지만, 그렇게 되질 않지요.
로그인을 하거나 세션이 끊겨 다시 로그인을 할 때 솔루션은 $url로 로그인 후 이동 할 경로값을 저장합니다.
$url을 생성 할 때 $url = $g4[url].$urlencode; 이렇게 만들어 지는데요.
ssl로 인해서 config의  경로값은 도메인/서브폴더입니다.
그리고 $urlencode는 ./서브폴더/웹.php 를 반환합니다.
두개의 경로가 합처지면서 서브폴더가 두번이되죠.

위 오류의 예로

로그인 할 때 login_check.php를 실행 할때 login.skin.php에서 $url을 전송하고 로그인 후 $url경로대로 페이지를 이동합니다.

다른곳에서도 $url을 생성해 경로값을 반환하는 페이지에서는 어김없이 이 오류가 생깁니다.

이것을 해결하는 방법은 아래와 같습니다.
if ($url){
    $url = str_replace("/서브폴더/서브폴더","/hp",$url);
    $urlencode = urlencode($url);
}else{
    $urlencode = str_replace("/서브폴더","",$_SERVER[REQUEST_URI]);
    $urlencode = urlencode($urlencode);
}
위처럼 임의로 서브폴더가 두개인 $url은 하나로 줄여주고, $urlencode 코드가 생성 되는 부분에서는 서브폴더를 경로에서 삭제를해버립니다.

|

댓글 1개

잠돌님 팁감사합니다.
이걸 어디에 적용시켜야 하는지요
login_check.php 아니면 login.skin1.php 에 적용시켜야 하는지요.
댓글을 작성하시려면 로그인이 필요합니다.

그누4 팁자료실

3,309건

그누보드4와 관련된 팁을 여러분들과 함께 공유하세요. 나누면 즐거움이 커집니다.

+
제목 글쓴이 날짜 조회
09-06-04 조회 5,741
09-06-04 조회 2,642
09-06-04 조회 3,118
09-06-04 조회 4,924
09-06-02 조회 3,888
09-06-02 조회 2,482
09-06-01 조회 4,786
09-06-01 조회 3,366
09-05-31 조회 2.1만
09-05-30 조회 4,315
09-05-30 조회 5,378
09-05-29 조회 3,424
09-05-28 조회 5,040
09-05-27 조회 5,298
09-05-26 조회 4,833
09-05-24 조회 5,843
09-05-23 조회 5,275
09-05-22 조회 1.3만
09-05-21 조회 3만
09-05-21 조회 3,193