Dies ist ein CGI -Programm, das in C geschrieben wurde, um eine Angebotsdatenbank -Website zu bedienen.
Derzeit dient es Daten aus dem Verzeichnis QUOTES_ROOT in 4 Formaten: HTML, JSON, CSV und "RAW", das nur spezialisiert ist, wenn hier eine einfachere Parsen angezeigt wird:
raw :: *(raw_line)
raw_line :: id "," epoch "," text "n"
id :: *(0-9)
epoch :: *(0-9)
text :: *(any char except 'n')
Bearbeiten Sie zitate.h, um den Speicherort von QUOTES_ROOT zu ändern, und fügen Sie dort Dateien mit dem Namen #Name hinzu. Stellen Sie sicher, dass der Name HTML-Safe ist und das Dir hat RW-Berechtigungen.
Es unterstützt jetzt auch Post und Löschen, um Zitate hinzufügen/zu bearbeiten/zu löschen. Damit dies funktioniert, müssen Sie einen zufälligen Benutzernamen + Passwort auswählen, sie mit einem Dickdarm, Base64 IT und in Quotes_Auth Env var einfügen. Dann können Sie die URL 'https: // username: [email protected]/quotes/' verwenden, um Operationen zu post/löschen.
Durch das Posten von Daten in /Quotes /Name werden diese Daten als neues Zitat hinzugefügt und den ID + -Timestempel dieses neuen Zitats zurückgegeben, das durch ein Komma getrennt ist.
Veröffentlichen von Daten des Formulars '[Epoch]: [Text]' to/quotes/name/id bearbeitet die Epoche oder den Text des Zitats (oder beides). Wenn Sie den Text nur ändern möchten, denken Sie daran, diesen führenden Dickdarm einzuschließen.
Löschen der URL/Zitate/Name/ID wird .. Nun, es wird das Angebot löschen, was haben Sie erwartet?
Beispiel nginx -Konfiguration (mit FCGIWRAP):
location /quotes {
root /var/www/quotes/;
fastcgi_param SCRIPT_FILENAME /var/www/quotes/cgi-bin/quotes;
fastcgi_param DOCUMENT_URI $document_uri;
fastcgi_param REQUEST_URI $request_uri;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_param QUOTES_AUTH [base64'd user:pwd]
fastcgi_pass unix:/var/run/fcgiwrap.socket;
}