Re: lug-bg: WAP + apache
- Subject: Re: lug-bg: WAP + apache
- From: Peter Pentchev <roam@xxxxxxxxxxx>
- Date: Wed, 5 Jan 2005 13:11:31 +0200
On Wed, Jan 05, 2005 at 12:43:03PM +0200, Valeri Vladev wrote:
> Здравейте!
>
> Честита 2005 г.
>
> Имам работещ веб-сървър Apache/1.3.31.
> Реших да създам за колегите една колекция с картинки и
> музика, които да могат да се свалят с GSM.
>
> Свалих един готов index.wml
[snip]
> в /etc/apache/mime.types има следните редове
[snip]
>
> Веб-сървъра би трябвало да разпознае дали браузъра е на мобилно
> устройство и да върне правилната страница.В /var/www имам два файла
> index.html и
> index.wml
>
> Когато се свържа с веб-сървъра в /var/log/apache/access.log получавам
> aaa.bbb.ccc.ddd - - [05/Jan/2005:08:53:35 +0200] "GET / HTTP/1.1" 200
> 5258 "-" "Nokiaxxxx/1.0 (04.50)" "-"
Този ред означава:
- aaa.bbb.ccc.ddd - адрес на клиента
- второто тире - няма username за автентикация, т.е. клиентът не е
изпратил username/password за HTTP auth
- [05/Jan/...] - дата и час на заявката
- "GET / HTTP/1.1" - заявката, която клиентът е изпратил
- 200 - HTTP код на отговора; 200 значи "всичко е наред,
изпращам ти съдържание"
- 5258 - размер в байтове на съдържанието
> а като отговор на телефона "no gateway reply".
Това значи, че WAP gateway-ът не е получил WAP страница, която да
предаде обратно към телефона.
> Не мога да разбера къде е проблема.
От това, че клиентът взима "GET /", а след това Apache казва, че изпраща
5258 байта, на мен ми изглежда, че всъщност Apache връща index.html, а
не index.wml :) Пробвай от телефона да браузнеш директно
http://servername/index.wml и да видим какво ще стане. Ако стане, може
да убедиш Apache за тази директория да сложи DirectoryIndex index.wml -
но тогава ще подава index.wml и на не-WAP браузъри :)
Имаше някакъв начин да се дава различен DirectoryIndex при различни
клиентски заявки, но точно в момента не мога да се сетя какъв беше.
> Как мога да разбера какво връща веб-сървъра към gateway-а /ако
> изобщо връща нещо/ ?
Освен това, което пише в лога, можеш да пробваш да пуснеш tcpdump или
нещо такова - върху уебсървъра пускаш:
tcpdump -nlvv -i eth0 -s 1500 -x tcp and port 80
Това най-добре да го пренасочиш към файл, който после да разглеждаш :)
Ако твоята версия на tcpdump поддържа опция -X, най-добре използвай и
нея, че да не се налага после сам да разкодираш hex output, т.е.:
tcpdump -nlvv -i eth0 -s 1500 -xX tcp and port 80
(е, разбира се, може да смениш eth0 с името на интерфейса, по който ще
идват заявки от WAP gateway-а, а ако знаеш *точно* от кой gateway идват
заявките - ти знаеш де, това е aaa.bbb.ccc.ddd в лога - направо слагаш
накрая 'and host aaa.bbb.ccc.ddd')
Надявам се това да помогне :)
Поздрави,
Петър
--
Peter Pentchev roam@xxxxxxxxxxx roam@xxxxxxxx roam@xxxxxxxxxxx
PGP key: http://people.FreeBSD.org/~roam/roam.key.asc
Key fingerprint FDBA FD79 C26F 3C51 C95E DF9E ED18 B68D 1619 4553
No language can express every thought unambiguously, least of all this one.
Attachment:
pgpkMwr1zyuL5.pgp
Description: PGP signature
|