beatovich: htaccess fileetest

hallo

mein htaccess leitet Dateien um

RewriteCond %{HTTP_COOKIE} ^.*mainjsRedirect=([a-z0-9_]+\.js).*$ [NC]
RewriteRule ^js/main.js$ "https://beat-stoecklin.ch/js/%1" [R=302,L]

RewriteRule ^js/main.js$ "js/main1.js" [L]

Ich würde aber gerne einen Filetest noch einfügen, etwa so…

RewriteCond %{HTTP_COOKIE} ^.*mainjsRedirect=([a-z0-9_]+\.js).*$ [NC]
RewriteCond js/%{1}.js -f
RewriteRule ^js/main.js$ "https://beat-stoecklin.ch/js/%1" [R=302,L]

RewriteRule ^js/main.js$ "js/main1.js" [L]

Gibt es so was?

  1. Tach!

    mein htaccess leitet Dateien um

    Ich würde aber gerne einen Filetest noch einfügen, etwa so…

    Du möchtest also auf einem anderen System wissen, ob eine Datei existiert? Diese Information gibt es nicht im HTTP. Du kannst nur von Requests den Statuscode auswerten, der dir aber auch keine Auskunft darüber gibt, ob der Webserver eine Datei gefunden hat oder einen Prozess hat antworten lassen.

    Was der Apache aber kann, ist, Subrequests an sich selbst zu stellen RewriteCond mit -F und -U. Wenn dein Ziel also auf demselben Server liegt, kannst du damit vielleicht etwas machen. Hab ich aber keine Erfahrung.

    Auch gibt es RewriteMap, mit dem man ein Programm aufrufen kann, das zumindest den Statuscode eines Requests auswerten kann.

    dedlfix.