For more information regarding the security incident at F5, the actions we are taking to address it, and our ongoing efforts to protect our customers, click here.

Forum Discussion

Walter_WorkAcct's avatar
Walter_WorkAcct
Icon for Altostratus rankAltostratus
Mar 31, 2022
Solved

Convert .htaccess rewrite rules to iRule

Literally trying to copy this logic into an irule and struggling with the translation:

Is not a regular file:RewriteCond %{REQUEST_FILENAME} !-f
Is not a regular directory:RewriteCond %{REQUEST_FILENAME} !-d
Is not a favicon: RewriteCond %{REQUEST_URI} !^/(favicon\.ico|apple-touch-icon.*\.png)$ [NC]
Rewrite the URL: RewriteRule (.+) index.php?p=$1 [QSA,L]

1 Reply

  • Hi Walter_WorkAcct...using the htaccess tester, here's a before/after example:

    The first two rewrite conditions are apache specific for local implementation and should be fine to ignore, but ignoring the favicon needs to be addressed. This results in an iRule that could look something like this (untested, might need adjustment):

    when HTTP_REQUEST {
      set uri [string tolower [HTTP::uri]]
      if { not (($uri ne "/favicon.ico") or [string match apple-touch-icon*.png $uri]) } {
        HTTP::uri /index.php?p=[string range $uri 1 end]
      }
    }