I am new to apache and php, so I suspect this will be an easy one to answer.
In short, I am trying to set up my document root to be /var/www/htdocs
and I want my php scripts to run in /var/www/cgi-bin. For some reason
I am getting "500 internal server error" when I try to run a script
(called phpauth.php) in that directory. If I try to run the same
script in the document root, it works fine but I don't want to do
that.
Here are the relevant lines of the error log:
[Sat May 23 22:19:02 2009] [error] [client {mylaptop.ip.address}]
(8)Exec format error: exec of '/var/www/cgi-bin/phpauth.php' failed,
referer: http://{myserver.ip.address}
[Sat May 23 22:19:02 2009] [error] [client {mylaptop.ip.address}]
Premature end of script headers: phpauth.php, referer:
http://{myserver.ip.address}
I am running apache 2.2 on Debian, with the config settings at default
except as shown below.
This is a listing of /etc/apache2/sites-enabled/000-default, which is
a symlink to /etc/apache2/sites-available/default. The only changes
are where I commented out lines and replaced them with the lines
immediately below them.
<VirtualHost *:80>
ServerAdmin webmas...@localhost
# DocumentRoot /var/www
DocumentRoot /var/www/htdocs
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
# <Directory /var/www>
<Directory /var/www/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
# ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
ScriptAlias /cgi-bin/ /var/www/cgi-bin/
# <Directory "/usr/lib/cgi-bin">
<Directory "/var/www/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>
</VirtualHost>
I didn't make any changes in apache2.conf or anywhere else. I just
changed /etc/apache2/sites-available/default as shown above, then I
did apache2ctl stop, a2dissite default, a2ensite default, apache2ctl
start.
Thanks
-Lyle
---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: [email protected]
" from the digest: [email protected]
For additional commands, e-mail: [email protected]