Apache 2.2 ProxyPassMatch Kérdés

Fórumok

Üdvözlet Mindenkinek!

Szeretnék beállítani a címben szereplő software segítségével egy Reverse Proxy-t oly módon, hogy egy VirtualHost gyökérkönyvtárától kezdve minden kérést átirányítson az adott szerverre de úgy, hogy néhány könyvtárat figyelmen kívül (exclude) hagyjon. Azt tudom, hogy a dolog megoldható lenne simán a ProxyPass-al, de nem szeretnék két sort használni oda, ahol egy jól megfogalmazott szabály is elég. Van valakinek ötlete, hogyan lehetne megírni ezt a - ha minden igaz Negative Lookahead - RegEx kifejezést működőre?

Köszönöm a segítséget!

Hozzászólások

Idáig ez állításként OK, 1 könyvtárra: ^/?dir1/(.*)$

Ezt kellene negálni plusz több könyvtárat is kizárni.

Nem értem, hogy miért mániád ez a negálás...

Ez egy létező szerver konfigjából lett kiollózva/anonimizálva:

ErrorDocument 403 /forbidden.html
ErrorDocument 404 /notfound.html

SetEnvIf Remote_Addr ^200\.201\.202\.203$ enable-portalcons

RewriteEngine on
RewriteRule ^/$ http://domain.com/login [R,L]
RewriteRule ^/forbidden\.html$ - [L]
RewriteRule ^/notfound\.html$ - [L]
RewriteCond %{ENV:enable-portalcons} !.
RewriteRule ^/console.*$ - [F]
RewriteRule ^/(.*)$ http://domain.com/$1 [P]
ProxyPassReverse / http://domain.com/

Nem sokkal tisztabb es atlathatobb ha kulon adod meg a kiveteleket ha mar tamogatja, mintsem egy regexp-el probalnad definialni amit nehezebb is osszerakni meg kesobb boviteni es ertelmezni?
Mi ertelme van annak, hogy egy soros konfigkent probalod beallitani? Gyorsabb lesz tole, jobban tamogatott az a megoldas, ha masnak kell hozzanyulni akkor jo esellyel konnyebben tud banni azzal, kevesebb szivas lesz vele kesobb ha frissiteni kell a rendszert vagy milyen ertelmes ervet tudsz felhozni mellette?

Jellemzően inkább a technika kihasználása lenne most a cél - ha már tudja - nem más. Szeretem megfogni a dolgokat onnan, ahonnan Google-ben sem találok semmi értelmeset. Ha fontos szempontot is említeni megfelelő számú kivétel felsorolása helyett 1 RegEx biztosan gyorsabb futásidőt is eredményez.