2016-09-25 4 views
0

Linux에서 Apache 가상 호스트로 open_basedir을 설정했는데 정상적으로 작동합니다.php open_basedir에서 심볼릭 링크를 무시할 수있는 방법이 있습니까?

php_admin_value의 open_basedir을 "은/var/www가/ABC/public_html을"

I 오전 지정된 기본 디렉토리 외부에있는 하나의 심볼릭 링크를 허용해야 함 (/ var/www가/ABC/public_html을/파일 - > ../files).

어쨌든 그럴 수 있습니까?

+0

해당 구성 옵션이 해당 폴더 외부의 액세스를 안전하게 차단하는 것이라면 전체적인 사항입니다. – arkascha

+0

예. 하지만 하나의 심볼릭 링크에 대한 예외를 찾고 있습니다. 어떻게 든 특정 링크를 허용하기 위해 어딘가에 경로를 추가합니다. –

+0

죄송 합니다만, "예외"가 허용되면 일반적인 보호 메커니즘에는 어떤 의미가 있습니까? 당신이 요구하는 것에 대해 조금 생각해보십시오 ... – arkascha

답변

1

open_basedir 제한을 우회 할 방법이 없습니다. 그러나 은 단지 하나의 경로 이상을 수용 할 수 있으므로 open_basedir에 대한 추가 심볼릭 링크 경로를 포함 할 수 있습니다. 이 심볼릭 링크와이 제한을 피할 수 없습니다 그래서

모든 심볼릭 링크가

open_basedir=/var/www/abc/public_html:/var/www/abc/files

가 해결됩니다.

PHP Manual: open_basedir

은 당신이 명심해야 할 것은 open_basedir가 주어진 경로에있는 모든 수 있다는 것입니다. 즉, 일단 /var/www/abc/files 경로에 액세스 권한이 부여되면 /var/www/abc/files/foo, /var/www/abc/files/bar 등과 같은 경로의 모든 항목도 허용됩니다.