
Apache 2.2에서 프록싱이 작동하는 데 문제가 있습니다.
시작하려고 하면 Invalid command 'ProxyPass'
오류가 발생합니다. 이는 proxy_http_module
로드되지 않았 음을 나타냅니다 . 그러나 디버그를 보면 거기에 있는 것 같습니다. 예:
E:\Apache\bin>httpd -e debug
[Fri Aug 21 15:48:55 2015] [debug] mod_so.c(246): loaded module actions_module
...
[Fri Aug 21 15:48:55 2015] [debug] mod_so.c(246): loaded module proxy_ajp_module
[Fri Aug 21 15:48:55 2015] [debug] mod_so.c(246): loaded module proxy_http_module <-----
[Fri Aug 21 15:48:55 2015] [debug] mod_so.c(246): loaded module setenvif_module
....
[Fri Aug 21 15:48:55 2015] [debug] mod_so.c(246): loaded module jk_module
[Fri Aug 21 15:48:55 2015] [notice] Disabled use of AcceptEx() WinSock2 API
Syntax error on line 84 of E:/Apache/conf/extra/httpd-ssl.conf:
Invalid command 'ProxyPass', perhaps misspelled or defined by a module not included
in the server configuration
그래서 Proxy_http_module이 로드되는 것 같습니다. 왜 ProxyPass가 무엇인지 모르는지 이해할 수 없습니다.
httpd.conf
내 파일 에서 확실히 켰어
#LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule negotiation_module modules/mod_negotiation.so
#LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
#LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
#LoadModule proxy_connect_module modules/mod_proxy_connect.so
#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so # <--------------
#LoadModule rewrite_module modules/mod_rewrite.so
참고: SSL 연결을 통해 이 작업을 수행하려고 하므로 httpd-ssl.conf
나중에 httpd.conf
파일 에도 로드됩니다.
<IfModule ssl_module>
Include conf/extra/httpd-ssl.conf
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
그런 다음 httpd-ssl.conf
VirtualHost 항목을 설정했습니다.
<VirtualHost _default_:443>
DocumentRoot "E:/Apache/htdocs"
### dummy IP
ServerName 127.12.34.56:443
ServerAdmin [email protected]
ErrorLog "E:/Apache/logs/error.log"
TransferLog "E:/Apache/logs/access.log"
#ProxyRequests Off
### It chokes on the following entry
ProxyPass / http://myfirewalledserver:80/
#ProxyPassReverse / http://myfirewalledserver:80/
</VirtualHost>
내가 여기서 무엇을 놓쳤습니까?
답변1
프록시_http모듈이 필요합니다대리, 그리고프록시패스지시어는 후자에 정의되어 있습니다.
로드되었는지도 확인하세요.
Milind Singh에게 감사드립니다.
다음을 실행하여 모듈을 로드합니다.
Run sudo a2enmod proxy_http