php exec함수의 권한?

Extra Form
PHP PHP 8.0
CMS Rhymix 2.x

서버를 혼자서 이전하니까 여기저기서 문제가 펑펑 터지네요 ;;

 

nginx 의 실행 권한(유저/그룹) = php의 실행권한(유저/그룹)이며

 

모든 파일은 644 / 모든 폴더는 755로 셋팅되어 있습니다.

 

서버 이전 전에만 해도 잘 실행되던 exec 함수를 통한 curl 을 이용한 모듈이, 전혀 작동을 하지 않네요.

 

1. 시스템에 curl이 설치되어 있고

2. php_curl 모듈도 물론 설치되어있고

3. 서버를 이전하면서 동일한 php 버전에, pool.d 파일들과 .conf파일들을 그대로 복사해서 가져왔는데도 

작동을 안하니까 너무 머리가 아픕니다 ㅠㅠ

 

혹시 exec 함수를 통한 curl 자체가 실행이 안될때 어떤 부분을 확인해보면 좋을까요? ㅠㅠ

 

 

  • profile
    자문자답입니다!
    curl 을 테스트 해보고, hosts를 resolve할수 없다는 오류가 발생하면 꼭 DNS셋팅을 확인하세요 ㅎㅎ
  • profile

    nginx 유저/그룹으로 php를 실행한다면 644/755 퍼미션으로 되어 있는 파일과 폴더에 쓰기 권한이 주어지지 않을 텐데요? 실제 파일의 소유자(대개 FTP 계정과 일치함)에 맞추어 php-fpm에서 user, group 설정을 해주어야 합니다.

  • profile profile

    아아 넵 nginx 는 www-data로 주고,
    실제 파일의 소유자 (adduser을 통해 생성한 유저 이름) 로 php-fpm의 pool.d에서 각 사이트별로 user와 group을 지정하였습니다!

     

    www폴더 내의 파일/폴더의 소유자 및 그룹은 모두 adduser에서 생성한 유저의 이름이구요

    라엘님 블로그를 보고 공부를 했었고, 예전에 진곰님이 서버를 봐주셨을때도 별 말씀 안주셔서 이게 맞는 줄 알았네요 ㅠㅠ

  • profile profile
    아, php-fpm에서 pool마다 따로 user, group을 지정하셨다면 그게 맞습니다.
    원글의은 마치 모든 pool이 www-data로 돌아가는 것처럼 읽혔거든요.
  • profile profile

    감사합니다 ㅎㅎ
    지난번에 root로 함부로 접속하지 말고, 각 사이트별 유저계정 권한에 조심하라고 하셔서 항상 주의하고 있네요
    nginx,php등 셋팅만 잘 되어있으면 굳이 위험하게 files폴더를 777로 셋팅하지 않아도 잘 굴러가더라구요