Hello,

The ices protocol is based on HTTP and is used for online streaming. In the
early days the specification for this protocol was to use

     1     GET /serv/login.php?lang=en&profile=2 *ICE*/1.0
     2     Host: www.mydomain.com
     3     User-agent: my small browser
     4     Accept: image/jpeg, image/gif
     5     Accept: image/png

As you can see, the bolded part is the only difference between this and
HTTP. I guess the designer realized this was a bone headed move and almost
every modern icecast client today uses HTTP in its request header. However
I need it to work for older clients as well.

My question is, how can I get haproxy to accept this protocol? "option
accept-invalid-http-request" doesn't seem to be what I want, and I tried
using "mode tcp" until I realized I couldn't because my config file uses

use_backend <backend> if <condition> (which requires mode http).

My config file is fairly simple if this helps:

frontend http-in-8001
        bind *:8001

        acl martin11_master_acl url -i /martin11_master
        use_backend martin11_master if martin11_master_acl

backend martin11_master
        #mode tcp
        server martin11_master 192.168.1.147:8002


Martin

Reply via email to