使用此命令重新加载HAProxy时出现此问题:
haproxy -D -f gateway.cfg -p /var/run/haproxy.pid -D -sf $(cat /var/run/haproxy.pid)
错误结果
[ALERT] 169/001728 (3844) : Starting frontend proxy: cannot bind socket
我尝试在配置中添加用户root或Administrator但无济于事。根据ls -la的文件权限是Administrator none
。这让我觉得HAProxy不完全支持windows,我想知道-sf / -st前缀是如何工作的? (我在unix系统中尝试过,结果工作正常.HAProxy配置如下所示
global
daemon
maxconn 1024
pidfile /var/run/haproxy.pid
defaults
log global
mode http
option httplog
option dontlognull
retries 3
option redispatch
contimeout 5000
clitimeout 50000
srvtimeout 50000
frontend proxy
bind *:80
default_backend servers
backend servers
balance roundrobin
option httpchk GET /
option forwardfor
option httpclose
stats enable
stats refresh 10s
stats hide-version
stats uri /admin?stats
stats auth admin:admin
stats realm Haproxy\ Statistics
server svr0 127.0.0.1 check inter 5000
答案 0 :(得分:1)
HAProxy通常不支持Windows,即使在Cygwin下也是如此。 HAProxy包含针对Linux和各种UNIX系统的非常具体的优化,这使得很难在Windows上运行它。
即使你以某种方式让它运行,它也会导致糟糕的性能,永远不会得到一个稳定甚至中等速度的系统。在Windows上运行HAProxy并尝试处理各种仿真层没有任何意义,即使在Linux上运行的1瓦以下的ARM盒中也能获得出色的性能。
答案 1 :(得分:-1)
您可以在Windows下运行大多数haproxy版本。这是使用cygwin编译的1.4.24:
http://www.mediafire.com/download/7l4yg7fa5w185bo/haproxy.zip
您可以将它用于测试目的,但是您应该避免使用它进行生产,只能在Windows下进行开发,例如轻松转换到Linux ...