테스트 사이트 - 개발 중인 베타 버전입니다

페이지 숨기기 질문 드려요. 채택완료

morrie 5년 전 조회 2,677

index.php 에 form을 작성하고 submit하면 form_send.php 로 이동되어 서버와 엑셀로 전송되게 해놨는데 서버로 전송되는 것은 php로 작성되어 소스보기에 노출이 안되지만 엑셀로 보내지는 것은 www.aaa.com/form_send.php url을 주소창에 입력해 페이지로 가서 소스보기를 하니 정보가 보여서요. 보안문제가 있는데 보안강화 할 실력이 아직 안되서 페이지를 숨기는 방식으로 하려고 합니다.

 

첫번째 시도는 iframe 으로 페이지를 index.php 로 불러왔더니 새로고침을 할 때마다

엑셀로 빈값이 계속 전송이 되서 실패 했구요.

 

두번째 시도는 페이지를 하나 더 만들어서 location.replace 을 이용해서 새로만든 페이지로 가게끔 했더니 이것도 서버에는 데이터가 전송이 되고 엑셀에는 전송이 안되서 실패 했구요. 

 

세번째 시도는 meta tag로 refresh 주고 0.1초 뒤에 새페이지로 이동하게 하니 엑셀에도 정상적으로 데이터가 들어가는걸 확인해서 일단 해결은 된것 같은데요.

 

이것보다 더 좋은 방법은 없나요?

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트

post,get이 없을때 조건추가하시면될것 같아요.

만약존재시,
해당페이지는 관리자이외에는 볼수없도록 추가도 될수있을것 같아요.
2가지 조건을 조합하시면 될것 같네요.

혹은 이전페이지가 form보낸 index.php가 아닐때도

가능하겠네요.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

m
morrie
5년 전
답변감사합니다.
레벨 걸어서 관리자만 보게 하는것과 post 값 없을때 접속못하게 하는것 둘다 해볼께요.

댓글을 작성하려면 로그인이 필요합니다.

M
5년 전

회사내 로컬 작업코드인가요? 그렇다면 IP제어하세요

form_send.php 페이지에 엑셀 출력 전에 $_SERVER['REMOTE_ADDR'] 정보로 제어하세요

단일 IP가 아니라면 in_array() 로 그룹처리 하시구요

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

m
morrie
5년 전
답변감사합니다.
회사내 로컬 작업은 아니고 제 개인적으로 form 공부하면서 이것저것 기능 넣어보고 있는데 제가 모르는 더 좋은 방법이 있는지 궁금해서요.

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인