J'ai la pièce suivante dans mon fichier de configuration:Les questions qui ont l'exécution d'un script via cgi dans lighttpd
cgi.assign = (".sh" => "")
$HTTP["url"] =~ "^/urlpath/" {
$HTTP["querystring"] =~ "cams=on" {
cgi.assign = ("" => "/scriptpath/CamsOn")
}
$HTTP["querystring"] =~ "cams=off" {
cgi.assign = ("" => "/scriptpath/CamsOff")
}
url.redirect = ("^/urlpath/" => "http://somewebsite")
}
je le module cgi chargé:
server.modules = (
"mod_redirect",
"mod_access",
"mod_cgi",
"mod_accesslog")
Now "CamsOn" et « CamsOff "sont des scripts shell shebanged. Pour être honnête, je l'avais fait auparavant et je l'ai fait fonctionner mais mon serveur s'est écrasé et j'ai perdu mes configs. Pour une raison quelconque, je ne peux pas comprendre pour la vie de moi comment le faire fonctionner. Je fais la redirection, donc je n'ai pas besoin de créer la page "urlpath". La redirection fonctionne très bien à l'intérieur de la pièce $ HTTP ["url"], et j'ai même testé la portion de chaîne de requête en imbriquant une redirection à l'intérieur qui l'amène juste à google.com; urlpath /? cams = sur m'a envoyé à google en conséquence.
Qu'est-ce que je fais mal?
Mise à jour:
je devais le faire fonctionner à l'aide
$HTTP["url"] =~ "^/urlpath/" {
$HTTP["querystring"] =~ "cams=on" {
cgi.assign = ("" => "/scriptpath/CamsOn")
}
$HTTP["querystring"] =~ "cams=off" {
cgi.assign = ("" => "/scriptpath/CamsOff")
}
}
Je pense que la redirection obtenait d'abord analysé, alors quand l'adresse a changé, il ne l'URL plus adaptent et comparaisons de chaînes de queues. Puis-je changer cela? L'idée est de rendre l'urlpath dynamique et mis à jour dans le fichier conf dynamiquement. C'est pourquoi j'ai la redirection vous envoyer à une autre adresse. De cette façon, je n'ai pas non plus besoin de faire du montage html ou de créer des dossiers supplémentaires.