^ Linux - Friheden til egen webserver: Version 2.5.20040516 - 2020-12-31 ^| | [[web:apache-udvidelser|forrige]] | Kapitel 1. Webserver | [[web:laes-mere-om-apache|næste]] | ---- ==== 1.6. Apache som WAP-server ==== Det seneste år er WAP-telefoner ved at blive en udbredt standard for at hente mobile internet-sider. Siderne er ikke formatteret i HTML, men i WML ( //Wireless Markup Language// ), som er en XML-variant. I al sin enkelthed er WAP set fra serverens side blot et nyt filformat; WML. Det der skal tilføjes på din hjemmeside for at understøtte WAP, er så kun de samme data i WML, og så formateret i et format så de kan ses på en meget lille skærm. Det er snyde nemt af få en Apache webserver til at fungere som en WAP-server. Det kræver basalt set kun at webserveren kan fortolke at filer der ender på.wmlsendes somContent-type: test/vnd.wap.wml. Samtidig skal du måske også have.wbmp-billeder med over, så derfor skal du tilføje disse to linjer til/etc/http/conf/httpd.conf: # For de almindelige WML-sider AddType text/vnd.wap.wml .wml # For WML indlejret grafik AddType image/vnd.wap.wbmp .wbmp Nu skal du bare genstarte Apache, og du har en WAP-server. Lad os lige tage to eksempler. **Eksempel 1-1. Det første WAP-eksempel** Det enkleste eksempel på en WAP-side er nok denne

Her kommer teksten på min første WAP-side

Det vigtigste, der skal bemærkes sammenlignet med HTML, er at næsten alle tags skal afsluttes, dvs.

//skal// efterfølges af

. Dog skal et billede ikke afsluttet, som det kan ses i næste eksempel **Eksempel 1-2. Et WAP-eksempel med et billede** skal anvendes med / til sidst og alt-tag skal med.

Her er min søde søn Frederik Frederik

WML er en ret stor standard, som man kan læse mere på på[http://www.wap.com|http://www.wap.com]eller[http://www.wapforum.com|http://www.wapforum.com]. Du kan på[http://www.anywhereyougo.com/ayg/ayg/Content.po?name=wap/Wmlidx|http://www.anywhereyougo.com/ayg/ayg/Content.po?name=wap/Wmlidx]få mere hjælp om de enkelte tags. Har du ingen WAP-telefon kan du med fordel bruge[http://gelon.net/|http://gelon.net]som har en Java-baseret WAP-simulator der er velegnet til test. Er du interesseret i en kom-i-gang-guide, så prøv at læse[http://www.zend.com/zend/tut/wap.php|http://www.zend.com/zend/tut/wap.php] I det følgende går vi dog lidt længere, idet vi viser hvordan man også får PHP-understøttelse til WAP. Vi antager at du har installeret Apache og PHP4. Når et PHP-program starter med at sende data tilbage til modtageren, sender PHP først noget et //HTTP-hoved// . Hovedet indeholder dato, serverudgave og meget andet, men især hvilken type data der vil blive sendt. Hvis intet er anført i hovedet sendes //Content-type: text/html// , og dette kan ændres med en enkelt kommando: //Content-type: text/vnd.wap.wml// . Herunder er eksemplet fra før hvor filen heddertest.phpi stedet fortest.wml, hvorefter Apache vil overgive kontrollen med filen til PHP. ****

Dato idag er ****

I Perl skrives HTTP-hovedet i starten og efterfølges af to '\n'. Dette eksempel skal placeres i/cgi-bin/-kataloget. #!/usr/bin/perl -w # Filnavn: test.pl # Bemærk to gange '\n' som afslutter HTTP-hovedet **print "Content-type: text/vnd.wap.wml\n\n";** print "\n"; print "\n"; print "\n"; print " \n"; print "

\n"; my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time); my $today=sprintf("%04d-%02d-%02d",$year+1900,$mon+1,$mday); **print " Dato idag er $today\n";** print "

\n"; print "
\n"; print "
\n";
SSLUG har eksempelvis siden november 1999 vist sin kalender i WAP/PHP-format. Kildeteksten findes på[http://www.sslug.dk/adict/wap.phps|http://www.sslug.dk/adict/wap.phps]og kan ses med en almindelig browser. Resultatet af programmet findes på[http://www.sslug.dk/adict/wap.php|http://www.sslug.dk/adict/wap.php], hvor du så skal bede browseren om at gemme indholdet på din disk hvis du prøver med din browser. Alternativt kan[http://gelon.net/|http://gelon.net]bruges til at se WAP-kalenderen. ---- | [[web:apache-udvidelser|forrige]] | [[web:index|hjem]] | [[web:laes-mere-om-apache|næste]] | | Apache-udvidelser | [[web:webserver|op]] | Læs mere om Apache |