2018년 2월 25일 일요일

PHP : 시놀러지 나스에 웹디렉토리를 추가했더니 "No input file specified" 가 발생한다.

시놀러지 나스를 간단한 웹서버 대용으로 쓰고 있는데, 웹디렉토리를 하나 추가 하고 조회를 해 보았더니 "No input file specified" 가 뜬다.


난데없는 오류에 정신이 혼미해 지지만, 진정하자.
일반적인 상황에선 잘 볼수 없는 오류라서 대부분은 당황할 것이다.
하지만, 별로 심각한 오류는 아니다.
특히, 시놀러지 나스를 사용하고 있는경우는 더 간단히 해결할 수 있다.


그냥, 제어판에서 "웹서비스" 항목으로 가서 "PHP 설정" 탭에 있는 "PHP open_basedir" 항목에 추가했던 웹디렉토리 경로를 추가해 주자.



그럼 이렇게 정상적으로 웹페이지가 뜨는 것을 볼수 있다.
이 오류는 그냥 "웹루트" 이하가 아닌 페이지를 접근 할수 없도록 제한되어 있기 때문에 발생하는 오류. 다시말해 추가한 웹디렉토리가 "웹루트" 와 다른 경로이기 때문에 오류가 발생한것. 그러니, "open_basedir" 에 허용디렉토리를 추가해주면 쉽게 해결된다.

시놀러지 나스에선 관리 페이지가 있으니 거기서 그냥 추가해 주면되고, 다른 웹서버를 사용하는 경우에도 관리 페이지를 이용하거나, 아니면 그냥 "php.ini" 에서 "open_basedir" 항목을 찾아서 추가해 주면 된다.