Bekijk Volledige Versie : HTTP resultaat in Apache CGI-BIN programma?
Als ik een CGI-BIN programma schrijf voor Apache, is het
dan ook mogelijk om de HTTP resultaatcode te beinvloeden?
De output van een dergelijk programma begint met de response
headers, zoals meestal een Content-Type header, maar als ik
bijvoorbeeld een 403 wil terugsturen kan dat dan?
Als ik de "header" "403 Forbidden" of "HTTP/1.0 403 Forbidden"
print dan krijg ik een error in de log:
malformed header from script. Bad header=...
In een PHP programma kan ik wel doen:
header('HTTP/1.0 403 Forbidden');
Dit wordt kennelijk door iets van PHP herkend?
Is er ook zo'n constructie voor CGI-BIN programma's in Apache?
Rob <nomail@example.com> wrote:
> Als ik een CGI-BIN programma schrijf voor Apache, is het
> dan ook mogelijk om de HTTP resultaatcode te beinvloeden?
Ik heb het gevonden in een "CGI/1.1 spec", lastig te vinden
want de meeste URL's die daar naar wijzen zijn inmiddels niet
meer geldig. Toch maar eens converteren die boel...
In article <slrni6imoc.dk.nomail@xs8.xs4all.nl>,
Rob <nomail@example.com> writes:
> Rob <nomail@example.com> wrote:
>> Als ik een CGI-BIN programma schrijf voor Apache, is het
>> dan ook mogelijk om de HTTP resultaatcode te beinvloeden?
Natuurlijk.
> Ik heb het gevonden in een "CGI/1.1 spec", lastig te vinden
> want de meeste URL's die daar naar wijzen zijn inmiddels niet
> meer geldig. Toch maar eens converteren die boel...
Toch is de "CGI/1.1 spec" nog heel veel in gebruik.
Als ik er op zoek krijg ik:
http://www.w3.org/CGI/
http://www.rfc-editor.org/rfc/rfc3875.txt
bovenaan mijn lijstje. Wat wil je nog meer?
Verder wil ik nog even opmerken dat "een CGI-BIN programma"
een beetje vaag is.
Vroeger zag je wel dat er /cgi-bin/ in de url stond
maar een index.php is ook maar gewoon een cgi programma.
Helemaal tof is natuurlijk:
http://www.example.com/search/engine/friendly/url
en dat kan dan nog steeds een gewoon cgi programma zijn.
Operator <root@dragon.doktercom.nl>:
> Verder wil ik nog even opmerken dat "een CGI-BIN programma"
> een beetje vaag is.
> Vroeger zag je wel dat er /cgi-bin/ in de url stond
> maar een index.php is ook maar gewoon een cgi programma.
Over het algemeen werkt PHP niet via CGI maar via een Apache module.
--
robert
In article <slrni6lcno.uq0.robert@my.local.lan>,
US3N37+{n.i.w.o}@gmail.com.invalid (robert) writes:
> Operator <root@dragon.doktercom.nl>:
>> Verder wil ik nog even opmerken dat "een CGI-BIN programma"
>> een beetje vaag is.
>> Vroeger zag je wel dat er /cgi-bin/ in de url stond
>> maar een index.php is ook maar gewoon een cgi programma.
>
> Over het algemeen werkt PHP niet via CGI maar via een Apache module.
En de Interface tussen de Apache module en het php script is...
.... juist, de Common Gateway.
Operator <root@dragon.doktercom.nl>:
> In article <slrni6lcno.uq0.robert@my.local.lan>,
> US3N37+{n.i.w.o}@gmail.com.invalid (robert) writes:
>>
>> Over het algemeen werkt PHP niet via CGI maar via een Apache module.
>
> En de Interface tussen de Apache module en het php script is... ...
SAPI. Tenzij je een stokoude PHP en/of Apache gebruikt.
--
robert
Johan van Selst
15/09/10, 14:31
Once upon a newsgroup, robert claimed:
> Operator <root@dragon.doktercom.nl>:
>> Verder wil ik nog even opmerken dat "een CGI-BIN programma" een
>> beetje vaag is. Vroeger zag je wel dat er /cgi-bin/ in de url stond
>> maar een index.php is ook maar gewoon een cgi programma.
Inderdaad. CGI is een breed geaccepteerde standaard, die verder los
staat van een /cgi-bin/ substring in de URL.
> Over het algemeen werkt PHP niet via CGI maar via een Apache module.
Voor die verliezers die noodgedwongen Apache zijn gaan gebruiken;
maar gelukkig is er meer keuze in webservers.
Ciao,
Johan
--
Why do we always come here - I guess we'll never know.
It's like a kind of torture to have to watch the show.
John Bokma
15/09/10, 14:31
root@dragon.doktercom.nl (Operator) writes:
> Vroeger zag je wel dat er /cgi-bin/ in de url stond
Nah, dat was een keuze, en op zich geen verkeerde (dwz, om CGI
programma's buiten de document root te houden).
> maar een index.php is ook maar gewoon een cgi programma.
Kan, meestal niet.
> Helemaal tof is natuurlijk:
> http://www.example.com/search/engine/friendly/url
>
> en dat kan dan nog steeds een gewoon cgi programma zijn.
Of niet. CGI is niet de enige manier om dynamisch content te genereren,
noch is het de meest efficiente manier.
--
John Bokma j3b
Blog: http://johnbokma.com/ Facebook: http://www.facebook.com/j.j.j.bokma
Freelance Perl & Python Development: http://castleamber.com/
In article <87r5hwoqqm.fsf@castleamber.com>,
John Bokma <john@castleamber.com> writes:
> root@dragon.doktercom.nl (Operator) writes:
>
>> Vroeger zag je wel dat er /cgi-bin/ in de url stond
>
> Nah, dat was een keuze, en op zich geen verkeerde (dwz, om CGI
> programma's buiten de document root te houden).
Eigenlijk zouden php files ook buiten de document root
moeten houden.
>> maar een index.php is ook maar gewoon een cgi programma.
>
> Kan, meestal niet.
>
>> Helemaal tof is natuurlijk:
>> http://www.example.com/search/engine/friendly/url
>>
>> en dat kan dan nog steeds een gewoon cgi programma zijn.
>
> Of niet. CGI is niet de enige manier om dynamisch content te genereren,
> noch is het de meest efficiente manier.
Als je het efficent wil doen dan neem je FastCGI.
En helemaal hip is:
http://mojolicious.org/
Johan van Selst <{n.i.w.s-s.}@news.gletsjer.org>:
> Once upon a newsgroup, robert claimed:
>
>> Over het algemeen werkt PHP niet via CGI maar via een Apache module.
>
> Voor die verliezers die noodgedwongen Apache zijn gaan gebruiken;
En de verliezers die noodgedwongen PHP zijn gaan gebruiker, uiteraard ;)
--
robert
Johan van Selst wrote:
> Voor die verliezers die noodgedwongen Apache zijn gaan gebruiken; maar
> gelukkig is er meer keuze in webservers.
Wat is er mis met Apache?
Roland van Ipenburg
15/09/10, 14:31
On 18 Aug 2010 09:39:43 GMT, nmp <address@is.invalid>
mentioned:
> Johan van Selst wrote:
>
>> Voor die verliezers die noodgedwongen Apache zijn gaan
>> gebruiken; maar gelukkig is er meer keuze in webservers.
>
> Wat is er mis met Apache?
Apache is zo populair dat als je anoniem in een nieuwsgroep
net wilt doen of je ergens heel veel verstand van hebt dat
je dan met vage verwijzingen naar meer obscure oplossingen
moet doen. Ongeveer net zoals met hipsters en welke bandjes
er op het moment goed zijn. Dan kan je ook niet met Rolling
Stones aankomen en scoor je beter met iets vaags waar nog
nooit iemand van gehoord heeft.
--
Roland van Ipenburg
roland.van.ipenburg@xs4all.nl
http://www.xs4all.nl/~ipenburg/
"Pooh Styx?"
nmp <address@is.invalid>:
> Johan van Selst wrote:
>
>> Voor die verliezers die noodgedwongen Apache zijn gaan gebruiken; maar
>> gelukkig is er meer keuze in webservers.
>
> Wat is er mis met Apache?
Veel te lastig om fatsoenlijk te configureren, teveel configuratieopties
die elkaar in de weg kunnen zitten (plus te weinig mogelijkheden om dat
goed te debuggen), en gebruikt teveel resources voor wat het moet doen.
Ik ben blij met nginx.
--
robert
Erick T. Barkhuis
15/09/10, 14:31
Roland van Ipenburg:
>On 18 Aug 2010 09:39:43 GMT, nmp <address@is.invalid>
>mentioned:
>> Johan van Selst wrote:
>>
>>> Voor die verliezers die noodgedwongen Apache zijn gaan
>>> gebruiken; maar gelukkig is er meer keuze in webservers.
>>
>> Wat is er mis met Apache?
>
>Apache is zo populair dat als je anoniem in een nieuwsgroep
>net wilt doen of je ergens heel veel verstand van hebt dat
>je dan met vage verwijzingen naar meer obscure oplossingen
>moet doen.
Dat verschijnsel zie je overal op Usenet. Er zijn zelfs lieden die
beweren dat je beter iets als Firefox of Opera kunt nemen, dan het
razend populaire IE.
[...om de zaak weer naar de client-side te draaien]
--
Erick
"Als ze niet eens weten te melden wat er in de luxe lederen etui zit,
dan heb je een nepper te pakken" - Anders Piet in niwo
John Bokma
15/09/10, 14:31
"Erick T. Barkhuis" <erick.use-net@ardane.c.o.m> writes:
> Roland van Ipenburg:
>
>>On 18 Aug 2010 09:39:43 GMT, nmp <address@is.invalid>
>>mentioned:
>>> Johan van Selst wrote:
>>>
>>>> Voor die verliezers die noodgedwongen Apache zijn gaan
>>>> gebruiken; maar gelukkig is er meer keuze in webservers.
>>>
>>> Wat is er mis met Apache?
>>
>>Apache is zo populair dat als je anoniem in een nieuwsgroep
>>net wilt doen of je ergens heel veel verstand van hebt dat
>>je dan met vage verwijzingen naar meer obscure oplossingen
>>moet doen.
>
> Dat verschijnsel zie je overal op Usenet. Er zijn zelfs lieden die
> beweren dat je beter iets als Firefox of Opera kunt nemen, dan het
> razend populaire IE.
Nee, nee, Firefox en Opera is weer te gewoon. Om er echt bij te horen
gebruik je emacs-w3m of telnet.
--
John Bokma j3b
Blog: http://johnbokma.com/ Facebook: http://www.facebook.com/j.j.j.bokma
Freelance Perl & Python Development: http://castleamber.com/