Apache CGI in user directory “End of script output before headers”

后端 未结 8 769
心在旅途
心在旅途 2021-02-04 17:10

I know there are some questions about this topic, but none seems to solve my issue. See this or this or this.

I\'m on Linux, Fedora21, and I\'m trying to enable per user

8条回答
  •  渐次进展
    2021-02-04 17:36

    Finally I solved that. Thanks to @JimB, because in his comment he pointed out SUEXEC, which I didn't know about (or simply ignored till now).

    After reading a bit the suEXEC documentation, I understood the the problem had to be there. So, I took a look at the configuration:

    # suexec -V
     -D AP_DOC_ROOT="/var/www"
     -D AP_GID_MIN=1000
     -D AP_HTTPD_USER="apache"
     -D AP_LOG_SYSLOG
     -D AP_SAFE_PATH="/usr/local/bin:/usr/bin:/bin"
     -D AP_UID_MIN=1000
     -D AP_USERDIR_SUFFIX="public_html"
    

    and everything looked Ok (good uid/gid for my user, userdir_suffix is fine, etc). So I took a look at the system logs:

    # journalctl -b | grep "suexec"
    May 22 11:43:12 caladan suexec[5397]: uid: (1000/user) gid: (1000/user) cmd: test.cgi
    May 22 11:43:12 caladan suexec[5397]: directory is writable by others: (/home/user/public_html/cgi-bin)
    

    and that's the problem: my cgi-bin directory was writable by others.

    I fixed by simply changing the permissions to 755.

提交回复
热议问题