httpd 서버가 있습니다
SuexecUserGroup netmet netmet
DocumentRoot /home/netmet/html
ServerName
ServerAdmin
ErrorLog /var/log/httpd/netmet.error
TransferLog /var/log/httpd/netmet.access
DirectoryIndex index.cgi index.html
AliasMatch /netmet-cgi-bin/nmHOST-4.*-DETAILS(.*)\.cgi /usr/lib/cgi-bin/netmet-cgi-bin/nmHOST-DETAILS$1.cgi
AliasMatch /netmet-cgi-bin/nmHOST-4.*-SERVICES(.*)\.cgi /usr/lib/cgi-bin/html/netmet-cgi-bin/nmHOST-SERVICES$1.cgi
AliasMatch /netmet-cgi-bin/nmTOP_NforORGA4-.*\.cgi /usr/lib/cgi-bin/netmet-cgi-bin/nmTOP_NforORGA.cgi
AddHandler cgi-script .cgi .pl
내 서버를 사용하여 이 스크립트에 액세스하려고 하면 다음과 같은 메시지가 나타납니다.500 내부 서버 오류그래서 나는 다음을 확인합니다 error.log
.
[Fri Jun 02 09:07:01.467017 2017] [core:notice] [pid 31617] AH00094: Command line: '/usr/sbin/apache2'
suexec policy violation: see suexec log for more details
지금 suexec.log
:
[2017-06-02 09:07:26]: uid: (1001/netmet) gid: (1001/netmet) cmd: index.cgi
[2017-06-02 09:07:26]: command not in docroot (/home/netmet/html/index.cgi)
온라인에서 해결책을 찾은 후 사람들은 이것을 제안했습니다.
~# /usr/lib/apache2/suexec -V
-D SUEXEC_CONFIG_DIR=/etc/apache2/suexec/
-D AP_GID_MIN=100
-D AP_LOG_EXEC="/var/log/apache2/suexec.log"
-D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
-D AP_UID_MIN=100
왜문서 루트보여주지 마시오? ?
답변1
apache2-suexec-custom을 설치한 후 변경할 수 있습니다.
apt-get install apache2-suexec-custom
구성을 변경합니다.
/etc/apache2/suexec
apache2 서비스를 다시 시작하십시오.