Apache-2.2
為什麼我在啟動 Apache 2.2 伺服器時收到“無效命令 ‘ProxyPass’”錯 誤?
我無法讓代理在 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 me@example.com 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>
我在這裡錯過了什麼?
proxy_http模組需要proxy,而ProxyPass指令在後者中定義。
確保它也已載入。
感謝米林德辛格
通過執行載入模組
Run sudo a2enmod proxy_http