Mailinglisten-Archive |
>Wie gesagt, die Idee kam mir auch schon. Allerdings basieren alle Beispiele,
>die ich bisher gelesen habe auf 2 Bedingungen, die bei mir beide nicht
>zutreffen:
>
>1. Es ist bekannt wie viele Parameter erwartet werden.
>2. Die Reihenfolge ist mir bekannt.
>
>Im Endeffekt will ich ein mapping haben das folgendes veranstalltet:
>
>http://foo.de/index.php?para1=a¶2=b¶3=c&...
>
>http://foo.de/index.php/para1,a/para2,b/para3,c/...
>
>Das muss doch hinzubekommen sein, oder?
das ist auch richtig,
mit aliasmatch bekommst du aber kein direktes "mapping",
du musst dein script noch anpassen,
z.bsp.
der request geht auf
http://127.0.0.1/brabbel/blubber1/blubber2/blubber3
gibst du in httpd.conf ein
AliasMatch ^/brabbel(.*) "d:/dev/default/brabbel.php"
==============brabbel.php==========
<?php
print_r($_SERVER);
?>
===================================
und das ganze spuckt dann folgendes aus
(bei mir lokal, windows, linux saehe anders aus)
===================================
Array
(
[COMSPEC] => C:\\WINDOWS\\system32\\cmd.exe
[DOCUMENT_ROOT] => d:/dev/default
[HTTP_ACCEPT] => image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
[HTTP_ACCEPT_ENCODING] => gzip, deflate
[HTTP_ACCEPT_LANGUAGE] => de
[HTTP_CONNECTION] => Keep-Alive
[HTTP_HOST] => 127.0.0.1
[HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; MyIE2; .NET CLR 1.0.3705)
[PATH] => d:\\dev\\watcom\\BINNT;d:\\dev\\watcom\\BINW;C:\\WINDOWS\\system32;C:\\WINDOWS;C:\\WINDOWS\\System32\\Wbem;C:\\Programme\\Perforce;D:\\dev\\php\\php;D:\\dev\\php4\\php;C:\\Programme\\Microsoft SQL Server\\80\\Tools\\Binn\\;C:\\Programme\\ATI Technologies\\ATI Control Panel
[REMOTE_ADDR] => 127.0.0.1
[REMOTE_PORT] => 3832
[SCRIPT_FILENAME] => d:/dev/default/brabbel.php
[SERVER_ADDR] => 127.0.0.1
[SERVER_ADMIN] => admin at DISTILLERY.LAN
[SERVER_NAME] => evosonic
[SERVER_PORT] => 80
[SERVER_SIGNATURE] => Apache/1.3.27 Server at evosonic Port 80
[SERVER_SOFTWARE] => Apache/1.3.27 (Win32) PHP/4.3.2
[SystemRoot] => C:\\WINDOWS
[WINDIR] => C:\\WINDOWS
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /brabbel/blubber1/blubber2/blubber3
[SCRIPT_NAME] => /brabbel/blubber1/blubber2/blubber3
[PATH_TRANSLATED] => d:/dev/default/brabbel.php
[PHP_SELF] => /brabbel/blubber1/blubber2/blubber3
[argv] => Array
(
)
[argc] => 0
)
===================================
so, dann lunzt man mal in REQUEST_URI und kann dies aufparsen
mit explode or whatever ..
damit kannst du dann deine parameter ermitteln ..
ciao
Mathias
php::bar PHP Wiki - Listenarchive