Extra Form
PHP PHP 7.2
CMS Rhymix 2.0

안녕하세요.

 

위젯페이지를 대신하여 조금 더 안정적인 사용 및 유지 관리를 위해 외부페이지를 추가하려고 합니다.

 

/include/외부페이지.html 을 직접 접속하면 비정상적으로 뜰것이 분명하여

아무래도 외부에 노출되는것을 막는것이 좋을 것 같다는 생각이 들었습니다.

 

robots 설정은 기본으로 해주어야 할것 같고

추가로 원천적인 접근을 방지하기위해서 페이지 상단에 php 코드를 넣어두려고 합니다.

 

그누보드 같은 경우 

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

이런식으로 접근을 막는 php 코드가 있었는데 따로 RXE에도 존재하는지 궁금합니다.

 

감사합니다.

  • profile

    신기하네요
    //layouts/스킨명/layout.html 으로 직접 접속해보니 퍼미션 에러가 뜨네요.(한번도 해본적 없다가 처음으로 해보았네요ㅎㅎ)
    사용되는 폴더들은 /.htaccess 에서 이미 관리되고 있는것 같기도합니다.

     

    하지만 임의로 생성한 폴더에 넣어둔 파일.html은 직접 접속이 되고 있어 혹시 기능이 있다면 넣어주고 없다면

    그냥 아파치측에서 막아버려야할것 같습니다

  • profile profile
    기본적으로는 .htaccess 처럼 하면 되는데 html 파일자체를 PHP로 실행한다면 아래 @yjsoft님께서 남겨주신것처럼

    if(!defined('__XE__'))
    {
    exit();
    }

    이런식으로 XE여부를 채크하시면 됩니다.

    이는 라이믹스에서도 해당 상수에 XE인지 여부를 확인하고 있으므로 외부에서 해당파일을 실행하면 바로 종료됩니다.
  • profile profile
    감사합니다.
    제 사이트 레이아웃에는

    if(!defined('__XE__'))
    {
    exit();
    }
    이것도 안들어가있었네요 ㅎㅎ
    오늘 넣어주어야겠습니다.
  • profile profile

    레이아웃에서는 해당 코드가 필요가 없을거예요.

    layout 내부에 있는 모든 항목은 nginx의 rewrite설정이나 apache의 .htaccess만 잘읽힌다면 해당 파일을 접근했을때 403 혹은 404에러가 뜨게되어 있거든요..

  • profile profile
    RewriteRule ^(.+)/(addons|files|layouts|m\.layouts|modules|widgets|widgetstyles)/(.*) ./$2/$3 [L]
    여기 이미 선언된곳은 굳이 넣어도 되고 안 넣어도 된다 이 말씀이신거죠? 그렇게 하겠습니다 감사합니다.
  • profile profile
    네 이미 저 폴더명으로 시작되는 항목에서는 혹여나 실행되엇을때 Php를 정지 시키는것이라 그안에 있는 항목에 있는 파일이라면 걱정 안하셔두 됩니다.

    그래서 팁을 드리자면 보통 사이트 외부 페이지만들때 /layouts/사용중인레이아웃/include/file.html

    이렇게 불러오는방식을 선택하시는게 좋습니다.
  • profile

    https://github.com/rhymix/rhymix/blob/master/common/constants.php#L128

    https://github.com/rhymix/rhymix/blob/master/addons/member_extra_info/member_extra_info.addon.php#L4-L7

  • profile profile
    너무나 감사드립니다!!

    if(!defined('__XE__'))
    {
    exit();
    }
    로 잘이용하겠습니다!
  • profile

    해당 파일이나 .htaccess에서 확실하게 차단하셨다면 robots.txt에서는 빼세요. 그런 경로가 존재한다는 사실 자체를 굳이 알려줄 필요가 없습니다.