As you can see here, my server returns an Internal Server Error when it attempts to execute my DMCGI application.
I don't know why.
world/executor is set to "/home/jozefboer/byond/bin/DreamDaemon -CGI -trusted -logself" and I *am* returning a page. [usr<<browse("Hello world!")]
The test.dmb file has been chmodded to 777 (don't say 777 is wrong, 777 allows *anybody* access to it).
The only result I could come up with is because the /home directory cannot be accessed by anyone. What I mean by that is that it can't be read ("dir /home" won't work).
So... what's wrong?
ID:268885
![]() Dec 18 2004, 12:23 am
|
|
Nadrew wrote:
755 is a safer CHMOD. On top of that, some webservers REFUSE to execute improperly chmodded CGI (.dmb in this case) files. If groups or anybody has write access to the dmb or the folder the dmb is in, or possibly even the folder that contains the folder that the dmb is in, and so on, you could get an error like that. |
Okay. I've got root access, and I'm on a FreeBSD server at the moment.
Now it sits there and gives me an ugly 500 - Internal Server Error message. Why? I mean, the location of the DreamDaemon application is /usr/local/byond/bin/DreamDaemon, and this is all I have: #include <dantom/cgi/CGI.dme> The "./index.dmb" command returns: Expires: 5 |
How is index.dmb chmodded? How is the folder that it's in chmodded? Is the freebsd server set up to treat dmb files as cgi properly?
|
index.dmb : 777
cgi-bin : 777 Apache IS configured to run it. ./index.dmb works and gives me the correct data. BYOND is installed server-wide at /usr/local/byond The OS is FreeBSD. The BYOND software works. Now I need to find out why, 1. DMCGI doesn't work and returns 500 - Internal Server Error. 2. My site seems to be "switching" from place to place. [Old location to new location and vice versa. Yes, I moved] |
Phoenix Man wrote:
index.dmb : 777 Ow. 777. Change them both to 755. Apache might be configured to be secure in regards to cgi programs. Anyone being able to write to executable code, or the directory the code is in, is a bad thing. |
DreamDaemon /home/jozefboer.nl/byond/CC.dmb 2000 -trusted -logself ? |
Okay now. DMCGI doesn't work...again.
Now it executes everything fine and dandy.....except for DMCGI. Why won't it run DMCGI?! |
Ah! I've found out PHP doesn't work too.
This makes it that no applications whatsoever are ever executed. I'd like to know how this has been caused, why it has been caused, etc.... hhmmm. |
Phoenix Man wrote:
As you can see here, my server returns an Internal Server Error when it attempts to execute my DMCGI application. <del>Fixed.</del> Not fixed. All CGI applications seem to run, except for DMCGI! It gives me an Internal Server Error. I'm using Dantom.CGI and BYOND is in /usr/local/byond. I've set world/executor to "/usr/local/bin/DreamDaemon -CGI -trusted -logself" instead of "/usr/local/byond/bin/DreamDaemon -CGI -trusted -logself" but that didn't seem to have any effect. |
You have to make sure you have "Option ExecCGI" somewhere in your httpd.conf file, search it for "Option" and you'll find the current set, just add "ExecCGI" to it, or change it to "Option All".
|
First, make sure you have Dantom.CGI included in your project.
If so, run the command
"./test.dmb" in your shell and see if it gives you any errors. (Make sure you "cd" to the directory "test.dmb" is in)
Also, you need Apache configured to read .dmb as a CGI-Script. If you don't have root access to your system DMCGI isn't possible, only hosting/compiling stuff is possible with non-superuser accounts in Linux.