IIRF loaded, v1.2.15 working, 2.0a not yet, and now regex problem

Topics: Developer Forum, User Forum
Jan 30, 2009 at 3:03 PM
I use a W2K3 STD SP2 with IIS6, php 5.x using the ISAPI version and MySQL 5
I have placed the iirfGlobal.ini and the iirf.dll into the C:\WINDOWS\System32\Inetsvr
I have set NotifyLog to ON in the global ini-file
I have added the iirf.dll as extension and set to allowed. It is loaded in Websites to work for all websites.

Tried some redirection expressions from the readme and tested with TestParse.exe and made a list to test TestDriver.exe as well.
It seems to work with the executables.
But it does not do anything then giving me the standard 404-pages in IIS.

Made a page: /modified/page.html
Tried visiting http://www.mysite.com/original/substuff/page.html

It gives a 404-error
It does not log anything in D:\logfiles\iirf.log
Restarted IISAdmin numerous times.

My iirf.ini in my root of the website:

# Iirf.ini
#
# site or app-specific ini file
#

RewriteLog  D:\logfiles\iirf.log
RewriteLogLevel 6
MaxMatchCount 10

RewriteRule  ^/original/(.*).html  /modified/$1.html

What am I missing?
Jan 30, 2009 at 8:16 PM
Ok, switched back to IsapiRewrite version 1.2.15 and got it working.
Will do effort for 2.0a later on...

Now:

I seem to have a problem with my Regex... Any idea?

# Iirf.ini
#
# site or app-specific ini file
#

RewriteLog  D:\logfiles\iirf.log
RewriteLogLevel 6
MaxMatchCount 10

RewriteCond %{URL} [NF]
RewriteRule ^.+\.php?(.*) /deadlink
RewriteRule ^.+\.php$ /deadlink

# RedirectRule  ^/original/(.*).html  /modified/$1.html [R=301]

 

I need to have the following filtered:
/whatever/somescript.php  ====> if [NF] then redirect to /deadlink (this to prevent the obnoxious No input file specified - error from php.
/whatever/somescript.php?whateverquery=something  ====> if [NF] then redirect to /deadlink (this to prevent the obnoxious No input file specified - error from php.

The first one does work by rule 2
The second won't work at all and gives the No input file specified.

Here's the log:

Fri Jan 30 21:09:50 -  3384 - GetServerVariable: getting 'URL'
Fri Jan 30 21:09:50 -  3384 - GetServerVariable: 40 bytes
Fri Jan 30 21:09:50 -  3384 - GetServerVariable: result '/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - ReplaceServerVariables: VariableName='URL' Value='/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - ReplaceServerVariables: InputString='%{URL}' out='/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - EvalCondition: ts1 '/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - GenerateReplacementString: src='/whatever-text/this-will-work/index.php?ddaa','(null)' ReplacePattern='/whatever-text/this-will-work/index.php' vec=[[  [  0, 44, 39, 44] [] ] counts=2,0
Fri Jan 30 21:09:50 -  3384 - ApplyCaseConversion: before '/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - ApplyCaseConversion: after  '/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - GenerateReplacementString: result '/whatever-text/this-will-work/index.php'
Fri Jan 30 21:09:50 -  3384 - EvalCondition: checking '/whatever-text/this-will-work/index.php' against pattern '[NF]'
Fri Jan 30 21:09:50 -  3384 - EvalCondition: match result: -1 (No match)
Fri Jan 30 21:09:50 -  3384 - EvaluateCondition: Child is NULL
Fri Jan 30 21:09:50 -  3384 - EvalCondition: returning FALSE
Fri Jan 30 21:09:50 -  3384 - EvalConditionList: rule 1, FALSE, Rule does not apply
Fri Jan 30 21:09:50 -  3384 - EvaluateRules: Rule 2 : -1 (No match)
Fri Jan 30 21:09:50 -  3384 - EvaluateRules: returning 0
Fri Jan 30 21:09:50 -  3384 - DoRewrites: No Rewrite
Fri Jan 30 21:09:50 -  3384 - HttpFilterProc: SF_NOTIFY_URL_MAP
Fri Jan 30 21:09:50 -  3384 - HttpFilterProc: SF_NOTIFY_URL_MAP