테마경로 생략 및 $_GET / $_REQUEST 질문드립니다

테마경로 생략 및 $_GET / $_REQUEST 질문드립니다

QA

테마경로 생략 및 $_GET / $_REQUEST 질문드립니다

본문

https://gnustudy.com/bbs/board.php?bo_table=gnu_manual&wr_id=26

위 링크는 테마경로 생략하는 방법이고 이해하였으나

 

제가 지금 남에게서 받은 코드를 분석중인데 위 방법으로 쓰이지 않은것같아요 root에는 특정해서 다시 테마 경로로 넘기는 그런게 없습니다(단 하나 root/index.php는 조건문으로 테마경로의 index를 바라봅니다 나머지는 그런부분이 없어서 질문드립니다)

 

주소창에 root/about/about 로 접근하면

 

폴더내의 root/theme/basic/about/about.php 로 테마경로생략+php확장자 없이도 매칭이됩니다

 

제가 폴더내에 root/theme/basic/about/about2.php를 추가하고

 

주소창에 root/about/about2로 진입하면

 

제가 추가한 파일은 무시하고(맨앞 about으로 매칭되는것같습니다 about2.php, about3.php 다 그냥 about.php로 갑니다) root/theme/basic/about/about.php에 매칭됩니다

 

----위 까지가 1차 질문이고 혹시 아래랑 연관이 있을까봐 같이 씁니다'

 

위처럼 주소창에서 root/about/about으로 접근하면 root/theme/basic/about/about.php로 접근하는데

 

이 페이지는 페이징 기능이 있고 주소창에 root/about/about/3 같이 적으면

 

root/theme/basic/about/about.php로 접근하고 소스에서 최상단에서(common도 실행하기 전) 디버깅을 걸어봤어요

 

그런데 최상단에 common도 가기전부분에 디버깅을 걸자마자 $_REQUEST[$page] 안에 숫자 3이 있습니다

 

common접근 하기도 전에 $_REQUEST안에 값이 있다는건

 

주소창에서 root/about/about으로 접근했을때

 

제가 모르는 어떤 페이지로 가고 거기에서 자동으로 form을 날리거나 url을 틀어주거나 해서 제가 보고있는 root/theme/basic/about/about.php로 보내주는 그런게 있는건가 추측중입니다 

 

읽어주신 것만으로도 감사드립니다

 

 

 

 

 

이 질문에 댓글 쓰기 :

답변 1

위 링크는 테마안의 일반페이지를 루트나 타 폴더에 넣을때 적용하는것입니다.

예를들면 테마 안의 a.php 파일을 루트/a.php 로 빼는법입니다. 

 

핵심은 

루트/a.php 파일의 상단에

if(defined('G5_THEME_PATH')) {
    require_once(G5_THEME_PATH.'/a.php');
    return;
}

부분입니다. 테마를 사용한다면 테마안의 a.php파일을 불러오는것입니다.

 

참고로 php 확장자 없애는건 아파치라면 .htaccess 에서 rewrite 설정입니다.

htaccess는 그냥 php확장자만 없애는거래서 안보고있다가 무심결에 그누보드 짧은주소 처보니까 htaccess 관련 글이 나와서 보니까 그 안에 들어오는 경로 하나하나를 다 rewrite랑 RegEx 로 처리 해놨더라구요...(root/about --> root/theme/basic/about) 그런데 제가 이 질문만 벌써 세번째거든요? 그런데 한번도 htaccess를 봐라는 답변을 못받았는데(사실 이번에도 테마경로 생략질문에 한해서는 그렇고요) 이게 굉장히 특이하고 일반적이지 않은 방법인가요? 답변에 매우 감사드립니다

답변을 작성하시기 전에 로그인 해주세요.
전체 123,663 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT