Mailinglisten-Archive |
Moin Moin! Den Source durchwühlen war allerdings das was ich nicht wollte 8) Ich hatte gehofft, daß dies schon irgendwie dokumentiert ist. Muss ich wohl doch sources lesen ... Danke, mfg Thomas ----- Original Message ----- From: Kristian Köhntopp <kk_(at)_netuse.de> To: <php_(at)_solix.wiso.Uni-Koeln.DE> Sent: Wednesday, June 30, 1999 1:56 PM Subject: Re: [php] apache .htaccess > > > ebids Webmaster wrote: > > Kann mir einer zufällig eine Liste (Doku) geben, in der alle Funktionen > > aufgelistet sind, welche ich innerhalb der .htaccess Datei verwenden kann, > > die durch das PHP-Apache Modul bereitgestellt werden? > > Apache-Module definieren eine Struktur mit den > von Ihnen verarbeiteten Konfigurationsanweisungen. In > http_core.c findest Du zum Beispiel > > static const command_rec core_cmds[] = { > > /* Old access config file commands */ > > { "<Directory", dirsection, NULL, RSRC_CONF, RAW_ARGS, > "Container for directives affecting resources located in the specified " > "directories" }, > { end_directory_section, end_nested_section, NULL, ACCESS_CONF, NO_ARGS, > "Marks end of <Directory>" }, > > und so weiter. Dabei ist ein command_rec definiert als > > typedef struct command_struct { > const char *name; /* Name of this command */ > const char *(*func) (); /* Function invoked */ > void *cmd_data; /* Extra data, for functions which > * implement multiple commands... > */ > int req_override; /* What overrides need to be allowed to > * enable this command. > */ > enum cmd_how args_how; /* What the command expects as arguments */ > > const char *errmsg; /* 'usage' message, in case of syntax errors */ > } command_rec; > > /* The allowed locations for a configuration directive are the union of > * those indicated by each set bit in the req_override mask. > * > * (req_override & RSRC_CONF) => *.conf outside <Directory> or <Location> > * (req_override & ACCESS_CONF) => *.conf inside <Directory> or <Location> > * (req_override & OR_AUTHCFG) => *.conf inside <Directory> or <Location> > * and .htaccess when AllowOverride AuthConfig > * (req_override & OR_LIMIT) => *.conf inside <Directory> or <Location> > * and .htaccess when AllowOverride Limit > * (req_override & OR_OPTIONS) => *.conf anywhere > * and .htaccess when AllowOverride Options > * (req_override & OR_FILEINFO) => *.conf anywhere > * and .htaccess when AllowOverride FileInfo > * (req_override & OR_INDEXES) => *.conf anywhere > * and .htaccess when AllowOverride Indexes > */ > > und zwar in http_config.h in den Apache-Sourcen. > > Mit diesen Informationen greift man sich nun das Modul seiner > Wahl und sieht sich den Quelltext an. Beispiel: mod_mime.c. > Dort sucht man nach command_rec und findet: > > static const command_rec mime_cmds[] = > { > {"AddType", add_type, NULL, OR_FILEINFO, ITERATE2, > "a mime type followed by one or more file extensions"}, > {"AddEncoding", add_encoding, NULL, OR_FILEINFO, ITERATE2, > "an encoding (e.g., gzip), followed by one or more file extensions"}, > > und so weiter. Offensichtlich ist die Anweisung "AddType" mit > OR_FILEINFO definiert, darf also in jeder config-Datei und in .htaccess > verwendet werden, wenn AllowOverride FileInfo vorhanden ist. > > Man kann daraus mit einem Script manuell eine Liste wie von Dir > gewünscht erzeugen oder man kann Apache diese Liste übrigens > selbstständig erzeugen lassen, wenn man ./httpd -h aufruft. > > kk_(at)_poe /opt/apache $ ./httpsd -h| head -10 > <Directory > Container for directives affecting resources located in the specified directories > http_core.c > Allowed in *.conf only outside <Directory> or <Location> > > </Directory> > http_core.c > Allowed in *.conf only inside <Directory> or <Location> > > <Location > Container for directives affecting resources accessed through the specified URL paths > http_core.c > > und so weiter. > > Kristian > > -- > Kristian Köhntopp, NetUSE Kommunikationstechnologie GmbH > Siemenswall, D-24107 Kiel, Germany, +49 431 386 436 00 > Using PHP3? See our web development library at > http://phplib.shonline.de/ (GPL) > > -- > ** Durchgehend geöffnet: http://www.php-center.de ** > Die PHP-Liste: mailto:php_(at)_infosoc.uni-koeln.de > http://infosoc.uni-koeln.de/mailman/listinfo/php >
php::bar PHP Wiki - Listenarchive