Dies ist ein persönliches Memo für einen vollständigen Anfänger des CGI-Programms. Ich schreibe zum ersten Mal einen Artikel wie diesen, daher denke ich, dass er unansehnlich ist, aber bitte verzeihen Sie mir. Wenn Sie Ratschläge oder Vorschläge haben, würde ich mich freuen, wenn Sie einen Kommentar abgeben könnten.
Ich möchte ein in Ruby geschriebenes CGI-Programm in einer lokalen Serverumgebung ausführen und testen.
Der HTTP-Server von Apache wird als Server verwendet.
Verwendung von AN-HTTPD (Referenz: http://www.aikis.or.jp/~s-suzuki/cgilabo/localserver/) Es scheint einige zu geben, aber die URL der Quelle ist tot. Es scheint, dass Sie es aus dem Archiv herunterladen können (Referenz: https://www.nishishi.com/blog/2019/02/an_httpd_waybac.html) Ich habe es versucht, aber es hat nicht funktioniert.
Obwohl es nichts mit dieser Motivation zu tun hat, habe ich Perl zum CGI-Programm hinzugefügt, weil es ein Standard zu sein scheint (das ist richtig).
Laden Sie die neueste Version (5.28.1) von der ActivePerl-Website herunter (https://www.activestate.com/).
Anmelden (Anmeldung erforderlich / Anmeldung mit GitHub-Konto möglich)
-> Featured Projects & Languages
-> Windows im Rahmen von ActivePerl 5.28
-> Klicken Sie auf Windows10 .msi ActivePerl-5.28.1.0000-MSWin32-x64-b462fde1.msi
Herunterladen und installieren
☆ Während der Installation Der Setup-Typ ist typisch In den Setup-Optionen Mit "Perl zur Umgebungsvariablen PATH hinzufügen" Aktivieren Sie "Perl-Dateierweiterungszuordnung erstellen". (Referenz: https://www.hiskip.com/pg-notes/how-to-install/develop-kit/active-perl526.html)
Nach der Installation wird ein Verzeichnis mit dem Namen "Perl64" unter C: ("C: \ Perl64") abgelegt.
Von RubyInstaller (https://rubyinstaller.org/downloads/) Laden Sie die neueste Version herunter (2.7.1-1)
Laden Sie rubyinstaller-2.7.1-1-x64.exe
herunter und installieren Sie es
☆ Während der Installation Aus dem gleichen Grund wie in Perl "Füge deinem Pfad Ruby exexutables hinzu" Aktivieren Sie "Zuordnen von .rb- und .rbw-Dateien zu dieser Ruby-Installation".
Nach der Installation wird ein Verzeichnis mit dem Namen "Ruby27-x64" unter C: ("C: \ Ruby27-x64") abgelegt.
Von der HTTP-Server-Download-Site von Apache (http://httpd.apache.org/download.cgi) Laden Sie die neueste Version herunter (2.4.43)
Apache HTTP Server Server 2.4.43 (httpd): 2.4.43 is the latest available version
-> Files for Microsoft Windows
-> Apache Lounge (Download-Ziel angeben, alles ist in Ordnung)
-> httpd-2.4.43-win64-VS16.zip
Herunterladen und entpacken
Nach dem Entpacken befindet sich unter dem Verzeichnis "httpd-2.4.43-win64-VS16" ein Verzeichnis namens "Apache24".
Sie können es tun, also setzen Sie es unter C: (C: / Apache24
).
Apache24 / conf / http.conf
ist eine Apache (httpd) -Konfigurationsdatei.
Bearbeiten Sie dies.
Bearbeiten Sie unten die Punkte
Einstellung des # CGI-Ausführungsorts ScriptAlias /cgi-bin/ "C:/Apache24/cgi-bin/"
# Ausführung von CGI zulassen <Directory "C:/Apache24/cgi-bin"> AllowOverride All Options Indexes FollowSymLinks ExecCGI Require all granted </Directory>
# Aktivieren Sie die Verwendung der Erweiterungen .cgi und .pl .rb AddHandler cgi-script .cgi .pl .rb
# Ver2, das die Verwendung von .cgi- und .pl .rb-Erweiterungen ermöglicht AddType application/x-httpd-cgi .cgi AddType application/x-httpd-cgi .pl AddType application/x-httpd-cgi .rb
(Referenz 1: https://phpjavascriptroom.com/?t=php&p=cgi#google_vignette) (Referenz 2: https://qiita.com/hirotoyoshidome/items/6d103e04dd07e90519d2) Die beiden Besten sind ein besonderer Dank
Klicken Sie hier für den Unterschied zwischen AddHandler und AddType (https://senooken.jp/post/2019/06/01/)
Sie können den HTTP-Server von Apache starten, indem Sie "Apache24 / bin / httpd.exe" ausführen.
Ich konnte "httpd.exe" nicht ausführen und verwies auf (http://t12488mac.blogspot.com/2011/06/windowsapache.html). Wenn Sie im Verzeichnis "Apache24 \ bin" auf "httpd.exe -t" klicken Er sagte zu mir: "Es gibt eine schlechte Beschreibung in" httpd.conf "und ich kann sie nicht ausführen." Als ich es reparierte, wurde es (natürlich) repariert.
CGI-Programm
Platziere es unter Apache24 / cgi-bin
.
Die folgende Beschreibung in der ersten Zeile des CGI-Programms von Ruby
#!/Ruby27-x64/bin/ruby
Oder
#!C:/Ruby27-x64/bin/ruby
Die folgende Beschreibung in der ersten Zeile des CGI-Programms von Perl
#!/perl64/bin/perl
Oder
#!C:/Ruby27-x64/bin/ruby
Wenn Sie einen Status erreichen, der die folgenden drei Bedingungen erfüllt, können Sie ihn schließlich in Ihrem Browser anzeigen.
httpd.exe
wird ausgeführt)**. Cgi
) unter Apache24 / cgi-bin
platziert istIn der URL-Leiste des Browsers
http://127.0.0.1/cgi-bin/**.cgi
Oder
http://localhost/cgi-bin/**.cgi
Wenn Sie eingeben, wird die von Ihnen geschriebene Seite im Browser angezeigt.
Damit ist der Vorgang in der lokalen Serverumgebung abgeschlossen.
Das Verzeichnislayout, das sich auf das in diesem Artikel vorgestellte bezieht, ist unten dargestellt.
C:/ ├ Perl64 │ ├ bin │ │ ├ Perl.exe │ : : │ ├ Ruby27-x64 │ ├ bin │ │ ├Ruby.exe │ : : │ ├ Apache24 │ ├ bin │ │ ├ httpd.exe │ │ : │ │ │ ├ conf │ │ ├ httpd.conf │ │ : │ │ │ ├cgi-bin │: └ **. Cgi (selbst erstellte CGI-Datei) │ : ::
Während ich tastete, konnte ich ein in Ruby geschriebenes CGI-Programm in einer lokalen Serverumgebung testen. müde.