Apache2 사용자 홈 디렉토리를 루트로 잠급니다.

Apache2 사용자 홈 디렉토리를 루트로 잠급니다.

저는 django 앱을 배포하기 위해 Apache2를 사용하고 있습니다. apache2를 apache와 다른 사용자로 설정했습니다. 문제는 서버가 실행될 때 사용자가 변경되지만 홈 디렉토리 환경 변수($HOME)는 /root로 유지된다는 것입니다. 왜 그럴까요?

답변1

저는 Linux/Unix 내부 전문가는 아니지만 유효 사용자 ID를 변경하는 시스템 호출은 환경 변수를 변경하지 않는다고 생각합니다.

환경 변수는 새 프로세스가 exec()' 또는 generate()'되는 경우, 즉 Apache를 시작할 때만 관련됩니다.

$HOME을 다른 값으로 설정하는 작은 래퍼 스크립트를 작성한 다음 Apache를 시작할 수 있습니다. Debian을 사용하는 경우 /etc/init.d/apache2를 수정하면 됩니다.

관련 정보