Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Detaillierte Erläuterung des Installations-Tutorials für Windows Apache2.4 VC9 (ApacheHaus).

Detaillierte Erläuterung des Installations-Tutorials für Windows Apache2.4 VC9 (ApacheHaus).

巴扎黑
巴扎黑Original
2018-05-26 10:48:305191Durchsuche

Dieser Artikel stellt hauptsächlich das detaillierte Installations- und Konfigurations-Tutorial von Windows Apache2.4 VC9 (ApacheHaus) vor. Freunde in Not können sich auf

1, Apache-Download

Wählen Sie eine Version aus und klicken Sie auf Herunterladen

Klicken Sie auf Datei für Microsoft Windows

Da Apache HTTP Server ist nicht offiziell Es wird eine binäre (ausführbare) Distribution bereitgestellt, daher wählen wir die von einigen Mitwirkenden kompilierte Version. Wir wählen das erste ApacheHaus

Klicken Sie auf ApacheHaus, um die Download-Seite aufzurufen

Wählen Sie eine der Versionen. Wenn Ihr Windows nicht die entsprechende VC-Umgebung installiert hat, wählen Sie die entsprechende VCRedistribute-Version zum Herunterladen und Installieren aus. Ich habe mich für die Apache 2.4VC9-Version entschieden, da die VC9-Umgebung bereits auf meinem Computer installiert ist.

Klicken Sie in der ersten Zeile unter JumpLinks auf eine Version, um das entsprechende komprimierte Paket herunterzuladen.

2. Konfigurieren Sie einen von Apache – httpd.conf

Geben Sie nach der Dekomprimierung den Ordner Apache22 ein (die letzten beiden Ziffern können unterschiedlich sein) und öffnen Sie ihn mit einem Texteditor (Ultraedit wird empfohlen). die conf-Datei Suchen Sie die ServerRoot-Option in der httpd.conf-Konfigurationsdatei

im Ordner, legen Sie das Apache-Verzeichnis fest, etwa in Zeile 35, und ändern Sie es in den Ordner Ihres Apache-Programms, zum Beispiel:

ServerRoot "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22"
Suchen Sie die Option „Listen“, legen Sie den Port fest, etwa 46 Zeilen, im Allgemeinen nicht ändern, verwenden Sie den Standardwert 80. Bitte stellen Sie sicher, dass Port 80 nicht belegt ist, bevor Sie den Server starten

Suchen Sie DocumentRoot Option, ändern Sie das Stammverzeichnis des Servers, zum Beispiel:

DocumentRoot "F:/"
Bitte stellen Sie sicher, dass dieses Verzeichnis vorhanden ist, sonst kann der Server nicht normal starten.

Ändern Sie das Verzeichnis, um sicherzustellen, dass es mit dem Server identisch ist Stammverzeichnis und ändern Sie nur die Anführungszeichen in der ersten Zeile unten

<Directory "F:/">
  #
  # Possible values for the Options directive are "None", "All",
  # or any combination of:
  #  Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
  #
  # Note that "MultiViews" must be named *explicitly* --- "Options All"
  # doesn&#39;t give it to you.
  #
  # The Options directive is both complicated and important. Please see
  # http://httpd.apache.org/docs/2.2/mod/core.html#options
  # for more information.
  #
  Options Indexes FollowSymLinks

  #
  # AllowOverride controls what directives may be placed in .htaccess files.
  # It can be "All", "None", or any combination of the keywords:
  #  Options FileInfo AuthConfig Limit
  #
  AllowOverride None

  #
  # Controls who can get stuff from this server.
  #
  Order allow,deny
  Allow from all

</Directory>
Suchen Sie die Option ScriptAlias ​​​​, legen Sie das Serverskriptverzeichnis fest, etwa 326 Zeilen, und legen Sie es im Allgemeinen auf den Ordner cgi-bin darunter fest das Apache-Verzeichnis

ScriptAlias /cgi-bin/ "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/cgi-bin"
Suchen Sie die nächste Verzeichnisoption, legen Sie das Skriptverzeichnis fest. Ungefähr 342 Zeilen, es muss auf das gleiche wie das vorherige ScriptAlias-Verzeichnis eingestellt werden

<Directory "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/cgi-bin">
  AllowOverride None
  Options None
  Order allow,deny
  Allow from all
</Directory>

3. Konfigurieren Sie die Apache 2--SSL-Konfiguration

Wenn Sie dies verwenden, wird beim Starten des Dienstes im Allgemeinen das folgende Meldungsdialogfeld angezeigt:

Eingabeaufforderung

Windows kann Apache2.2 nicht auf dem lokalen Computer starten. Weitere Informationen finden Sie in der Systemprotokolldatei. Wenn es sich um einen Nicht-Microsoft-Dienst handelt, wenden Sie sich bitte an den Anbieter und beziehen Sie sich auf den spezifischen Serverfehlercode 1.

Ermitteln Sie die Ursache dieses Problems:

Klicken Sie mit der rechten Maustaste auf den Computer, klicken Sie auf Verwalten->Windows-Protokoll->Anwendungen. Die Anzeige sieht wie folgt aus


Dies wird durch eine falsche SSL-Konfiguration verursacht. Lassen Sie uns unten über die Lösung sprechen.

Öffnen Sie die Datei conf/extra/httpd-ahssl.conf im Apache-Programmverzeichnis und konfigurieren Sie die Option VirtualHost. Es gibt drei Optionen mit dem Namen VirtualHost, die alle geändert werden müssen.

Der erste befindet sich in der Nähe der Linie 107.

Ändern Sie etwa in Zeile 110 die SSLCertificateFile in: das Verzeichnis, in dem sich Apache befindet/conf/ssl/server.crt

Ändern Sie etwa in Zeile 111 die SSLCertificateKeyFile in: das Verzeichnis, in dem sich Apache befindet befindet sich/conf /ssl/server.key

Ändern Sie DocumentRoot etwa in Zeile 112 in Ihr Server-Stammverzeichnis

Ändern Sie CustomLog etwa in Zeile 126 in: das Verzeichnis, in dem sich Apache befindet/ logs/ssl_request. log, wenn dies nicht geändert wird, ist es falsch. Im Allgemeinen werden die folgenden Fehler angezeigt:

Der Apache2.2-Dienst wurde aufgrund des folgenden dienstspezifischen Fehlers beendet: Die Funktion ist falsch.

Die Auswirkung der Änderung:

<VirtualHost _default_:443>
 SSLEngine on
 ServerName localhost:443
 SSLCertificateFile C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/conf/ssl/server.crt
 SSLCertificateKeyFile C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/conf/ssl/server.key
 DocumentRoot F:/

# openssl req -new > server.csr
# openssl rsa -in privkey.pem -out server.key
# openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 2048
<FilesMatch "\.(cgi|shtml|phtml|php)$">
  SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/Apache22/cgi-bin">
  SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
     nokeepalive ssl-unclean-shutdown \
     downgrade-1.0 force-response-1.0
CustomLog "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/logs/ssl_request.log" \
     "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</virtualhost>
Ändern Sie hauptsächlich die vier oben genannten Stellen

Es gibt zwei weitere VirtualHosts in den Zeilen 130 und 152, die beide sein müssen geändert. Vier Optionen

Beispiel:

Zeile 130

<VirtualHost *:443>
 SSLEngine on
 ServerName serverone.tld:443
 SSLCertificateFile C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/conf/ssl/serverone.crt
 SSLCertificateKeyFile C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/conf/ssl/serverone.key
 DocumentRoot F:/
# openssl req -new > serverone.csr
# openssl rsa -in privkey.pem -out serverone.key
# openssl x509 -in serverone.csr -out serverone.crt -req -signkey serverone.key -days 2048
<FilesMatch "\.(cgi|shtml|phtml|php)$">
  SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/Apache22/cgi-bin">
  SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
     nokeepalive ssl-unclean-shutdown \
     downgrade-1.0 force-response-1.0
CustomLog "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/logs/ssl_request.log" \
     "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b" env=HTTPS
</virtualhost>
Zeile 152

<VirtualHost *:443>
 SSLEngine on
 ServerName servertwo.tld:443
 SSLCertificateFile C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/conf/ssl/servertwo.crt
 SSLCertificateKeyFile C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/conf/ssl/servertwo.key
 DocumentRoot F:/
# openssl req -new > servertwo.csr
# openssl rsa -in privkey.pem -out servertwo.key
# openssl x509 -in servertwo.csr -out servertwo.crt -req -signkey servertwo.key -days 2048
<FilesMatch "\.(cgi|shtml|phtml|php)$">
  SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/Apache22/cgi-bin">
  SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
     nokeepalive ssl-unclean-shutdown \
     downgrade-1.0 force-response-1.0
CustomLog "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/ssl_request.log" \
     "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</virtualhost>
Die beiden oben genannten VirtualHosts müssen geändert werden vier Stellen

Auf diese Weise müssen Sie möglicherweise ./conf/extra/httpd-ssl.conf konfigurieren, auch wenn Apache konfiguriert ist

4. Starten Sie Apache HTTP Server

Verwenden Sie die Windows-Befehlszeile

als Administrator, um den bin-Ordner unter dem Apache-Programmordner einzugeben und geben Sie httpd -k install ein, um den Vorgang abzuschließen Installation des Apache-Dienstes.

Dann doppelklicken Sie auf ApacheMonitor.exe im bin-Verzeichnis und klicken Sie rechts auf Start, um den Server zu starten, falls normal, wie unten gezeigt:

Testen Sie es:

5, andere

Apache HTTP Server deinstallieren:

Geben Sie das bin-Verzeichnis als Administrator ein und verwenden Sie httpd -k uninstall, um den Dienst zu entfernen

Mit dem Befehl httpd -w -n „Apache2“ -k start zum Starten des Servers können die Protokolle während des Startvorgangs angezeigt werden, um die Fehleranalyse zu erleichtern.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Installations-Tutorials für Windows Apache2.4 VC9 (ApacheHaus).. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn