Ok so I'm trying to move my two domains over to linux/apache since I have a Debian box to play with, I figured it would be a nice crash course, and since neither domain does much except a image dump and host a blog it's nothing super critical.
I ran into a snag with the domain that hosts my blog running Moveable Type. I setup all the permissions and tried to run the mt-check.cgi by going to http://test.domain.com/cgi-bin/mt-check.cgi
I get a
The requested URL /cgi-bin/mt-check.cgi was not found on this server.
I believe I've narrowed it down to the httpd.conf file, as when I check the logs I see
[Tue Apr 26 17:45:17 2005] [error] [client 188.8.131.52] script not found or unable to stat: /usr/lib/cgi-bin/mt-check.cgi
So I grepped the httpd.conf and found
nix:/etc/apache# grep -n cgi-bin httpd.conf
588: ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
591:# "/usr/lib/cgi-bin" could be changed to whatever your ScriptAliased
594: <Directory /usr/lib/cgi-bin/>
872:#ErrorDocument 404 /cgi-bin/missing_handler.pl
So basically if I'm reading this correct Apache is ignoring the actual /cgi-bin/ directory that is in my /domain/cgi-bin/ and is looking to /usr/lib/cgi-bin/
I'm new to linux, so is how it's currently setup (cgi-bin symlinking back to /usr/lib/cgi-bin) the prefered way to handle it? if you are hosting multiple domains wouldn't that leave the cgi-bin quite messy and bothersome for end user management?
I was expecting to just create the /cgi-bin/ folder in domains as needed and make sure the apache user had read and execute permissions. Is this a bad idea and if not how do I change it from how it is now, to how I just discribed?