>운영 및 유지보수 >창문 운영 및 유지보수 >Windows Apache2.4 VC9(ApacheHaus) 설치 튜토리얼에 대한 자세한 설명

Windows Apache2.4 VC9(ApacheHaus) 설치 튜토리얼에 대한 자세한 설명

巴扎黑
巴扎黑원래의
2018-05-26 10:48:305247검색

이 글은 주로 Windows Apache2.4 VC9(ApacheHaus)의 자세한 설치 및 구성 튜토리얼을 소개합니다. 필요한 친구는

1. Apache 다운로드

버전을 선택하고 다운로드

를 클릭하세요. Windows용 파일

버전 중 하나를 선택하세요. Windows에 해당 VC 환경이 설치되지 않은 경우 해당 VCRedistribute 버전을 선택하여 다운로드하고 설치하세요. VC9 환경이 내 컴퓨터에 이미 설치되어 있기 때문에 Apache 2.4VC9 버전을 선택했습니다.

JumpLinks 아래 첫 번째 행의 버전을 클릭하면 해당 압축 패키지를 다운로드할 수 있습니다.

2. Apache 중 하나 구성 - httpd.conf

압축을 푼 후 내부에 Apache22(마지막 두 자리는 다를 수 있음) 폴더를 입력하고 텍스트 편집기(ultraedit 권장)를 사용하여 httpd.conf 구성 파일을 엽니다. conf 폴더

ServerRoot 옵션을 찾아 Apache 디렉터리를 35번째 줄로 설정하고 이를 Apache 프로그램의 폴더로 변경합니다. 예:

ServerRoot "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22"

Listen 옵션을 찾아 46번째 줄로 포트를 설정합니다. 일반적으로 다음과 같습니다. 수정하지 말고 기본 80을 사용하십시오. 서버를 시작하기 전에 포트 80이 사용되지 않았는지 확인하십시오. DocumentRoot 옵션을 찾아 서버 루트 디렉토리를 수정하십시오. 예:

DocumentRoot "F:/"
이 디렉토리가 존재하는지 확인하십시오. 그렇지 않으면 서버가 작동하지 않습니다. 정상적으로 시작합니다. 디렉터리가 동일하도록 디렉터리를 수정하세요. 아래 첫 번째 줄의 따옴표만 수정하세요

<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>

ScriptAlias ​​옵션을 찾아 서버 스크립트 디렉터리를 설정하세요. 326줄, 일반적으로 Apache 디렉터리 아래의 cgi-bin 폴더에 설정합니다

ScriptAlias /cgi-bin/ "C:/Users/myPC/Downloads/httpd-2.2.31-x86-r3/Apache22/cgi-bin"

다음 디렉터리 옵션을 찾아 스크립트 디렉터리를 설정합니다. 약 342줄, 이전 ScriptAlias ​​디렉터리와 동일하게 설정해야 합니다

<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, Apache 2 구성--ssl 구성

이와 같이 서비스를 시작하면 일반적으로 다음과 같은 메시지 대화 상자가 나타납니다. 메시지 대화 상자:

Prompt

Windows는 로컬 컴퓨터에서 Apache2.2를 시작할 수 없습니다. . 자세한 내용은 시스템 로그 파일을 참조하세요. Microsoft 이외의 서비스인 경우 공급업체에 문의하여 특정 서버 오류 코드 1을 참조하세요.

이 문제의 원인 확인: 컴퓨터를 마우스 오른쪽 버튼으로 클릭하고 관리->Windows 로그->응용 프로그램을 클릭하면 다음과 같이 표시됩니다.

이 문제는 잘못된 SSL 구성으로 인해 발생합니다. , 아래에 설명된 대로 해결책은 다음과 같습니다.

Apache 프로그램 디렉터리에서 conf/extra/httpd-ahssl.conf 파일을 열고 VirtualHost 옵션을 구성합니다. VirtualHost라는 세 가지 옵션을 모두 수정해야 합니다.

첫번째는 107라인 부근입니다.

라인 110에서 SSLCertificateFile을 Apache가 있는 디렉터리/conf/ssl/server.crt로 변경합니다.

라인 111에서 SSLCertificateKeyFile을 Apache가 있는 디렉터리/conf/ssl/server로 변경합니다. .key

112번째 줄에서 DocumentRoot를 서버의 루트 디렉터리로 변경합니다. 126번째 줄에서 CustomLog를 Apache가 있는 디렉터리/logs/ssl_request.log로 변경합니다. 변경되지 않으면 잘못된 것입니다. 일반적으로 다음 오류가 나타납니다.

다음 서비스별 오류로 인해 Apache2.2 서비스가 종료되었습니다. 기능이 올바르지 않습니다.

변경 효과:

<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>

위의 네 곳을 주로 변경합니다

라인 130과 152에 두 개의 다른 VirtualHost가 있으며 둘 다 위의 네 가지 옵션을 수정해야 합니다.

예:

라인 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>

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>

위 두 개의 VirtualHost를 네 곳에서 수정해야 합니다

이렇게 Apache를 구성하더라도 여전히 문제가 있는 경우 ./conf/extra/httpd-ssl을 구성해야 할 수도 있습니다. conf, 구성 방법 및 구성 VirtualHost

4와 유사하게 Apache HTTP Server를 시작합니다

Windows 명령줄을 사용하여

관리자 권한으로

Apache 프로그램 폴더 아래의 bin 폴더에 들어가서 httpd -k install을 입력하여 완료합니다. 아파치 서비스 설치.

그런 다음 bin 디렉터리에서 ApacheMonitor.exe를 두 번 클릭하고 오른쪽에 있는 시작을 클릭하여 서버를 시작합니다(정상인 경우 아래와 같이).

테스트해 보세요.

5, 기타

Apache HTTP 서버 제거:

bin 디렉토리를 관리자로 입력하고 httpd -k uninstall을 사용하여 서비스를 제거합니다.

httpd -w -n "Apache2" -k start 명령을 사용하여 시작합니다. 오류 분석을 용이하게 하기 위해 시작하는 동안 서버에 로그가 표시됩니다.

위 내용은 Windows Apache2.4 VC9(ApacheHaus) 설치 튜토리얼에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.