Migrated wordpress installation giving 404, but testdriver returns correct actions

Topics: User Forum
Mar 10, 2011 at 8:30 PM

I have just gone through the hassle of migrating a wordpress installation from an LAMP server to a windows 2003 x64/IIS6 server. Everything is working fine except the permalinks. The older server was set to show day and name in the format /%year%/%monthnum%/%day%/%postname%/.   On the windows server this diplays as /index.php/%year%/%monthnum%/%day%/%postname%/. The wordpress installation lives in a subfolder called "news". The rest of the site exists outside this folder. There are not any other application pools set up. It is a host-header based web site, sharing IP addresses with other sites, though I don't see any reason why that should affect this (The Microsoft URLrewrite doesn't work with host-header sites.)

One issue I had when migrating the site is that there was a looping redirect error. I took care of this with a the Disable Canonical Redirect plugin from Mark Jaquith, which has a single line of code:  remove_filter('template_redirect', 'redirect_canonical');  That took care of the loop error and the site appears without problem. 

The one red flag that I see in the log is the "no RewriteBase" message. When I set that to / it makes no difference, and still returns an error.  

I'm open to suggestions on this. 

I have installed IIRF 2.1.1.23 x64 with a single rule: 

RewriteRule ^/news/(?!index.php)(?!wp-)(.*)$ /news/index.php/$1 [I,L]

The output from testdriver.exe works just fine and gives an OK for the expected behavior:

Trying to read config at 'c:\web\wxtb\wwwroot\Iirf.ini'
Thu Mar 10 10:09:20 -   464 - -------------------------------------------------------
Thu Mar 10 10:09:20 -   464 - Ionic ISAPI Rewriting Filter (IIRF) 2.1.1.23 DEBUG RELEASE
Thu Mar 10 10:09:20 -   464 - IIRF was built on: May 30 2010 13:27:23
Thu Mar 10 10:09:20 -   464 - GetLogFile: app:'None'  new log:'C:\Web\IIRFLogFiles\.3996.log'
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: actual log file 'C:\Web\IIRFLogFiles\.3996.log'
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: ini file: 'c:\web\wxtb\wwwroot\Iirf.ini'
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: ini file timestamp: 2011/03/10 10:06:27 Pacific Standard Time
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: cfg(0x01BE5FB0)
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: LogLevel = 5
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: pass 2
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: c:\web\wxtb\wwwroot\Iirf.ini(23): RewriteRule (rule 1)  '^/news/(?!index.php)(?!wp-)(.*)$'  '/news/index.php/$1'    [I,L]
Thu Mar 10 10:09:20 -   464 - ParseRuleModifierFlags: '[I,L]'
Thu Mar 10 10:09:20 -   464 - ParseRuleModifierFlags: token 'I'
Thu Mar 10 10:09:20 -   464 - rule: Case Insensitive match
Thu Mar 10 10:09:20 -   464 - ParseRuleModifierFlags: token 'L'
Thu Mar 10 10:09:20 -   464 - rule: Last
Thu Mar 10 10:09:20 -   464 - ReadVdirConfig: Done reading INI for vdir(?), found 1 rules (0 errors, 0 warnings) on 27 lines

done reading new config
Thu Mar 10 10:09:20 -   464 - DoRewrites: Url: '/news/2011/03/10/This-is-a-test-file'
Thu Mar 10 10:09:20 -   464 - EvaluateRules: depth=0
Thu Mar 10 10:09:20 -   464 - GetServerVariable: getting 'SCRIPT_NAME'
Thu Mar 10 10:09:20 -   464 - GetServerVariable: 128 bytes
Thu Mar 10 10:09:20 -   464 - GetServerVariable: result ''
Thu Mar 10 10:09:20 -   464 - EvaluateRules: no RewriteBase
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/2011/03/10/This-is-a-test-file
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: 2 match
Thu Mar 10 10:09:20 -   464 - ReplaceServerVariables: alloc 19 bytes
Thu Mar 10 10:09:20 -   464 - ReplaceServerVariables: in='/news/index.php/$1' out='/news/index.php/$1'
Thu Mar 10 10:09:20 -   464 - GenerateReplacementString: alloc 54 bytes
Thu Mar 10 10:09:20 -   464 - GenerateReplacementString: result '/news/index.php/2011/03/10/This-is-a-test-file'
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Result (length 46): /news/index.php/2011/03/10/This-is-a-test-file
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Last Rule
Thu Mar 10 10:09:20 -   464 - EvaluateRules: returning 1
Thu Mar 10 10:09:20 -   464 - DoRewrites: Url: '/news/wp-content/text.js'
Thu Mar 10 10:09:20 -   464 - EvaluateRules: depth=0
Thu Mar 10 10:09:20 -   464 - GetServerVariable: getting 'SCRIPT_NAME'
Thu Mar 10 10:09:20 -   464 - GetServerVariable: 128 bytes

Thu Mar 10 10:09:20 -   464 - GetServerVariable: result ''
Thu Mar 10 10:09:20 -   464 - EvaluateRules: no RewriteBase
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/wp-content/text.js
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: -1 (No match)
Thu Mar 10 10:09:20 -   464 - EvaluateRules: returning 0
Thu Mar 10 10:09:20 -   464 - DoRewrites: Url: '/index.shtml'
Thu Mar 10 10:09:20 -   464 - EvaluateRules: depth=0
Thu Mar 10 10:09:20 -   464 - GetServerVariable: getting 'SCRIPT_NAME'
Thu Mar 10 10:09:20 -   464 - GetServerVariable: 128 bytes
Thu Mar 10 10:09:20 -   464 - GetServerVariable: result ''
Thu Mar 10 10:09:20 -   464 - EvaluateRules: no RewriteBase
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /index.shtml
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: -1 (No match)
Thu Mar 10 10:09:20 -   464 - EvaluateRules: returning 0
Thu Mar 10 10:09:20 -   464 - DoRewrites: Url: '/classes'
Thu Mar 10 10:09:20 -   464 - EvaluateRules: depth=0
Thu Mar 10 10:09:20 -   464 - GetServerVariable: getting 'SCRIPT_NAME'
Thu Mar 10 10:09:20 -   464 - GetServerVariable: 128 bytes
Thu Mar 10 10:09:20 -   464 - GetServerVariable: result ''
Thu Mar 10 10:09:20 -   464 - EvaluateRules: no RewriteBase
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /classes
Thu Mar 10 10:09:20 -   464 - EvaluateRules: Rule 1: -1 (No match)
Thu Mar 10 10:09:20 -   464 - EvaluateRules: returning 0
TestDriver: linked with 'Ionic ISAPI Rewriting Filter (IIRF) 2.1.1.23 DEBUG RELEASE'.
TestDriver: The IIRF library was built on 'May 30 2010 13:27:23'

Processing URLs...(c:\web\wxtb\wwwroot\SampleUrls.txt)

REWRITE '/news/2011/03/10/This-is-a-test-file' ==> '/news/index.php/2011/03/10/This-is-a-test-file'
OK

NO REWRITE '/news/wp-content/text.js' ==> --
OK

NO REWRITE '/index.shtml' ==> --
OK

NO REWRITE '/classes' ==> --
OK

0 Errors in 4 Total Trials


------------------------------------------------------------------------------

However, the server returns a 404 on the urls without index.php.  This snippet of the log file at level 5 shows: 


IIRF Log (level 5)

Thu Mar 10 10:11:04 -  3756 - EvaluateRules: depth=0
Thu Mar 10 10:11:04 -  3756 - GetServerVariable: getting 'SCRIPT_NAME'
Thu Mar 10 10:11:04 -  3756 - GetServerVariable: 38 bytes
Thu Mar 10 10:11:04 -  3756 - GetServerVariable: result '/news/2011/03/10/this-is-a-test-file/'
Thu Mar 10 10:11:04 -  3756 - EvaluateRules: no RewriteBase
Thu Mar 10 10:11:04 -  3756 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/wp-includes/js/l10n.js
Thu Mar 10 10:11:04 -  3756 - EvaluateRules: Rule 1: -1 (No match)
Thu Mar 10 10:11:04 -  3756 - EvaluateRules: returning 0
Thu Mar 10 10:11:04 -  3756 - DoRewrites: No Rewrite
Thu Mar 10 10:11:04 -  3756 - HttpFilterProc: SF_NOTIFY_AUTH_COMPLETE
Thu Mar 10 10:11:04 -  3756 - DoRewrites
Thu Mar 10 10:11:04 -  3756 - GetServerVariable_AutoFree: getting 'QUERY_STRING'
Thu Mar 10 10:11:04 -  3756 - GetServerVariable_AutoFree: 1 bytes
Thu Mar 10 10:11:04 -  3756 - GetServerVariable_AutoFree: result ''
Thu Mar 10 10:11:04 -  3756 - GetHeader_AutoFree: getting 'method'
Thu Mar 10 10:11:04 -  3756 - GetHeader_AutoFree: 4 bytes   ptr:0x001195B0
Thu Mar 10 10:11:04 -  3756 - GetHeader_AutoFree: 'method' = 'GET'
Thu Mar 10 10:11:04 -  3756 - DoRewrites: New Url, before decoding: '/news/wp-includes/js/l10n.js' 
Thu Mar 10 10:11:04 -  3756 - DoRewrites: Url (no decoding): '/news/wp-includes/js/l10n.js'

Coordinator
Mar 10, 2011 at 9:31 PM

Which is returning a 404?   /news/2001/03/10/this-is-a-test-file  ?   or /news/wp-includes/js/I10n.js ?   or both?

Does the file at /news/wp-includes/js/i10n.js exist?

Mar 11, 2011 at 1:40 AM

Yes, the *.js file exists. The wordpress post "this-is-a-test-file" gives the 404.    

I can pull up http;//yourdomain.com/news/index.php/2011/03/10/this-is-a-test-file/ without problem. It's the http://yourdomain/com/news/2011/03/10/this-is-a-test-file that returns a 404 when viewed in a browser.  This needs to stay intact on the new server as there is a legacy of links, tweets and cross-postings that refer to the old url's. 

Thanks.

Coordinator
Mar 11, 2011 at 1:45 AM

ok, show me the iirf.log of that single transaction.  http://yourdomain/com/news/2011/03/10/this-is-a-test-file

the log snip you included earlier was doctored - you cut something out of the middle and it was important.

Keep in mind that requesting http://yourdomain/com/news/2011/03/10/this-is-a-test-file may result in multiple subsidiary requests - for js files, images, styles, and so on.  I will want to see all those things in the iirf log file - but for one page request only.

ALSO - it would be good if you could hook up Fiddler2 on your browser and show me the request/response messages from the browser perspective, for http://yourdomain/com/news/2011/03/10/this-is-a-test-file .

 

Mar 11, 2011 at 4:54 PM

Nothing was snipped out of the middle, but that was what I could best identify as a single transaction.  I repeated the process here, but have included the entire log file, switched on for a single page load.   I'm not sure where the admin-bar.css is being loaded from, but it does exist.  Interestingly, if I previously load the page successfully including the index.php, sometimes it will subsequently load one time (and one time only) without the index.php. IS there some sort of caching going on?

Here is the sampleurl.txt test result and the log file:

 


Trying to read config at 'c:\web\wxtb\wwwroot\Iirf.ini'
Fri Mar 11 08:38:18 -  2072 - -------------------------------------------------------
Fri Mar 11 08:38:18 -  2072 - Ionic ISAPI Rewriting Filter (IIRF) 2.1.1.23 DEBUG RELEASE
Fri Mar 11 08:38:18 -  2072 - IIRF was built on: May 30 2010 13:27:23
Fri Mar 11 08:38:18 -  2072 - GetLogFile: app:'None'  new log:'C:\Web\IIRFLogFiles\.1052.log'
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: actual log file 'C:\Web\IIRFLogFiles\.1052.log'
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: ini file: 'c:\web\wxtb\wwwroot\Iirf.ini'
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: ini file timestamp: 2011/03/11 08:35:50 Pacific Standard Time
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: cfg(0x01BE5FB0)
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: LogLevel = 5
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: pass 2
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: c:\web\wxtb\wwwroot\Iirf.ini(23): RewriteRule (rule 1)  '^/news/(?!index.php)(?!wp-)(.*)$'  '/news/index.php/$1'    [I,L]
Fri Mar 11 08:38:18 -  2072 - ParseRuleModifierFlags: '[I,L]'
Fri Mar 11 08:38:18 -  2072 - ParseRuleModifierFlags: token 'I'
Fri Mar 11 08:38:18 -  2072 - rule: Case Insensitive match
Fri Mar 11 08:38:18 -  2072 - ParseRuleModifierFlags: token 'L'
Fri Mar 11 08:38:18 -  2072 - rule: Last
Fri Mar 11 08:38:18 -  2072 - ReadVdirConfig: Done reading INI for vdir(?), found 1 rules (0 errors, 0 warnings) on 27 lines
done reading new config
Fri Mar 11 08:38:18 -  2072 - DoRewrites: Url: '/news/2011/03/10/This-is-a-test-file'
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: depth=0
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: 128 bytes
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: result ''
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: no RewriteBase
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/2011/03/10/This-is-a-test-file
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: 2 match
Fri Mar 11 08:38:18 -  2072 - ReplaceServerVariables: alloc 19 bytes
Fri Mar 11 08:38:18 -  2072 - ReplaceServerVariables: in='/news/index.php/$1' out='/news/index.php/$1'
Fri Mar 11 08:38:18 -  2072 - GenerateReplacementString: alloc 54 bytes
Fri Mar 11 08:38:18 -  2072 - GenerateReplacementString: result '/news/index.php/2011/03/10/This-is-a-test-file'
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Result (length 46): /news/index.php/2011/03/10/This-is-a-test-file
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Last Rule
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: returning 1
Fri Mar 11 08:38:18 -  2072 - DoRewrites: Url: '/news/wp-content/text.js'
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: depth=0
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: 128 bytes
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: result ''
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: no RewriteBase
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/wp-content/text.js
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: -1 (No match)
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: returning 0
Fri Mar 11 08:38:18 -  2072 - DoRewrites: Url: '/index.shtml'
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: depth=0
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: 128 bytes
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: result ''
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: no RewriteBase
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /index.shtml
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: -1 (No match)
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: returning 0
Fri Mar 11 08:38:18 -  2072 - DoRewrites: Url: '/classes'
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: depth=0
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: 128 bytes
Fri Mar 11 08:38:18 -  2072 - GetServerVariable: result ''
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: no RewriteBase
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /classes
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: Rule 1: -1 (No match)
Fri Mar 11 08:38:18 -  2072 - EvaluateRules: returning 0
TestDriver: linked with 'Ionic ISAPI Rewriting Filter (IIRF) 2.1.1.23 DEBUG RELEASE'.
TestDriver: The IIRF library was built on 'May 30 2010 13:27:23'


Processing URLs...(c:\web\wxtb\wwwroot\SampleUrls.txt)




REWRITE '/news/2011/03/10/This-is-a-test-file' ==> '/news/index.php/2011/03/10/This-is-a-test-file'
OK


NO REWRITE '/news/wp-content/text.js' ==> --
OK


NO REWRITE '/index.shtml' ==> --
OK


NO REWRITE '/classes' ==> --
OK


0 Errors in 4 Total Trials






------------------------------------------------------------------------


Fri Mar 11 08:47:08 -  3200 - Cached: DLL_THREAD_DETACH
Fri Mar 11 08:47:08 -  3200 - Cached: DLL_THREAD_DETACH
Fri Mar 11 08:47:08 -  3200 - Cached: DLL_THREAD_DETACH
Fri Mar 11 08:47:08 -  3200 - Cached: DLL_THREAD_DETACH
Fri Mar 11 08:47:08 -  3200 - Cached: DLL_THREAD_DETACH
Fri Mar 11 08:47:08 -  3200 - HttpFilterProc: SF_NOTIFY_URL_MAP
Fri Mar 11 08:47:08 -  3200 - HttpFilterProc: cfg= 0x01C015B0
Fri Mar 11 08:47:08 -  3200 - HttpFilterProc: SF_NOTIFY_URL_MAP
Fri Mar 11 08:47:08 -  3200 - HttpFilterProc: cfg= 0x01C015B0
Fri Mar 11 08:47:08 -  3200 - HttpFilterProc: SF_NOTIFY_AUTH_COMPLETE
Fri Mar 11 08:47:08 -  3200 - DoRewrites
Fri Mar 11 08:47:08 -  3200 - GetServerVariable_AutoFree: getting 'QUERY_STRING'
Fri Mar 11 08:47:08 -  3200 - GetServerVariable_AutoFree: 1 bytes
Fri Mar 11 08:47:08 -  3200 - GetServerVariable_AutoFree: result ''
Fri Mar 11 08:47:08 -  3200 - GetHeader_AutoFree: getting 'method'
Fri Mar 11 08:47:08 -  3200 - GetHeader_AutoFree: 4 bytes   ptr:0x0323C470
Fri Mar 11 08:47:08 -  3200 - GetHeader_AutoFree: 'method' = 'GET'
Fri Mar 11 08:47:08 -  3200 - DoRewrites: New Url, before decoding: '/news/wp-includes/css/admin-bar.css' 
Fri Mar 11 08:47:08 -  3200 - DoRewrites: Url (no decoding): '/news/wp-includes/css/admin-bar.css'
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: depth=0
Fri Mar 11 08:47:08 -  3200 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Mar 11 08:47:08 -  3200 - GetServerVariable: 38 bytes
Fri Mar 11 08:47:08 -  3200 - GetServerVariable: result '/news/2011/03/10/this-is-a-test-file/'
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: no RewriteBase
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/wp-includes/css/admin-bar.css
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: Rule 1: -1 (No match)
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: returning 0
Fri Mar 11 08:47:08 -  3200 - DoRewrites: No Rewrite
Fri Mar 11 08:47:08 -  3200 - HttpFilterProc: SF_NOTIFY_AUTH_COMPLETE
Fri Mar 11 08:47:08 -  3200 - DoRewrites
Fri Mar 11 08:47:08 -  3200 - GetServerVariable_AutoFree: getting 'QUERY_STRING'
Fri Mar 11 08:47:08 -  3200 - GetServerVariable_AutoFree: 1 bytes
Fri Mar 11 08:47:08 -  3200 - GetServerVariable_AutoFree: result ''
Fri Mar 11 08:47:08 -  3200 - GetHeader_AutoFree: getting 'method'
Fri Mar 11 08:47:08 -  3200 - GetHeader_AutoFree: 4 bytes   ptr:0x001B8740
Fri Mar 11 08:47:08 -  3200 - GetHeader_AutoFree: 'method' = 'GET'
Fri Mar 11 08:47:08 -  3200 - DoRewrites: New Url, before decoding: '/news/wp-includes/css/admin-bar.css' 
Fri Mar 11 08:47:08 -  3200 - DoRewrites: Url (no decoding): '/news/wp-includes/css/admin-bar.css'
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: depth=0
Fri Mar 11 08:47:08 -  3200 - GetServerVariable: getting 'SCRIPT_NAME'
Fri Mar 11 08:47:08 -  3200 - GetServerVariable: 38 bytes
Fri Mar 11 08:47:08 -  3200 - GetServerVariable: result '/news/2011/03/10/this-is-a-test-file/'
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: no RewriteBase
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: Rule 1: pattern: ^/news/(?!index.php)(?!wp-)(.*)$  subject: /news/wp-includes/css/admin-bar.css
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: Rule 1: -1 (No match)
Fri Mar 11 08:47:08 -  3200 - EvaluateRules: returning 0
Fri Mar 11 08:47:08 -  3200 - DoRewrites: No Rewrite





Coordinator
Mar 11, 2011 at 5:33 PM

I suppose there is some caching going on. The request for /news/2011/03/10/this-is-a-test never arrives at IIRF, according to the log file you posted. That's why I suggested that you may have snipped something out of the log file.

Checking the Fiddler2 trace would be helpful.  Also check the IIS log to see what happened to that request.  

The only thing I see in the IIRF log file is a request for a .css file. This is normally a subsidiary request that is made AFTER the request for the page has been made and the response received.  The browser only knows that  it needs to request the .css file after it receives the html page in which the .css file is being referecned.

You will need to do the spelunking to figure this out, I guess.  Break down the problem.  remove IIRF or disable it.  Then Make a request for /news-wp-includes/css/admin-bar.css.   Does it get satisfied?  Make a request for news/index.php/2011/03/11/whatever . Does it get satisfied?  Make a request for a js file.  Then introduce IIRF, with your rewrite rules.  Make the same requests. See what happens. you may want to disable caching in IIS just for this testing effort.

The diagnostic tools you have are the IIRF log, the IIS log and the Fiddler2 log. Each one tells you something different.

Putting all the results together and interpreting the logs should give you insight into what is really happening and why.  

 

Mar 11, 2011 at 5:47 PM
Edited Mar 11, 2011 at 10:16 PM

I appreciate the help on this. I don't have fiddler installed but will look into it over the weekend.

When I made the page request I used firefox with images/flash/javascript disabled via a plugin so that I could just get the page request itself. 

The .css file does exist, as does the .js file.  Both are returned to the browser with or without IIRF and the current rule.  I was logged in to the wordpress admin in a different browser, so that may be where those requests came from. IIS logging is turned off, as they use google analytics, but I'll turn  on the logging and see what I can figure out. It will have to wait until Monday. 

One thing that did cross my mind this morning is that I installed a fresh wordpress install and imported the data from the old site then installed IIRF.  Since wp does a lot autonomously during setup, I'm wondering if I should try that process again after IIRF is installed?

I hope this thread helps others who may eventually run into the same problems. I haven't been able to find anything similar.

Mar 16, 2011 at 9:17 PM

I have not changed anything on the server since I last looked at this problem over the weekend. Now it appears to be working, so I have no explanation as to why it would have changed behavior.  I'll post again if the problem returns, but for the moment we are set to go live.

Thanks!

Coordinator
Mar 17, 2011 at 1:08 AM

caching maybe?  A stale cache might explain what you were seeing.

Anyway I'm glad to hear it's working for you.