Could not open ini file - I'm out of ideas

Topics: User Forum
Dec 12, 2011 at 9:26 AM

I am trying to install IIRF on IIS6. The files are served from a samba share on Linux.

So I followed the installation guide and read the FAQ and nevertheless still run into that evil "IIRF: Could not open ini file" error that's described in the FAQ

- I installed for one website on my webserver
- I have that unaltered IirfGlobal.ini in the installation directory and created the Iirf.ini in the root of the share that holds the webpages
- The installation verifies fine and shows that green arrow in the ISAPI filter tab
- Calling  http://server/iirfstatus displays the status report which shows that IIRF is running and the IirfGlobal.ini is read.

So good so far.

But in the IIRF Vidr Status I get
Root Vdr Ini File -- \\remoteshare\Iirf.ini
Ini file timestamp -- (file not found)
IIRF: Could not open ini file '\\remoteshare\Iirf.ini' (error: 13, Die Daten sind unzulässig)

But the file is there, permissions are ok and when I paste \\remoteshare\Iirf.ini in the server's local browser it loads the ini-file. So it's correctly named and accessible.

So why is IIRF telling me it cannot open that file? I even tested with full permissions on the Iirf.ini but also with no success.
Any ideas what is left to try?

Coordinator
Dec 13, 2011 at 5:27 AM

Hmmm.  I don't know why it does not work in IIRF, so I can only offer some suggestions or workarounds.

#1 Maybe you could map a drive?

#2 Maybe you could just copy the file locally. You obviously want the file to reside on the remote share. Maybe you could have a schtasks job that copies the remote file to the local place, every 30 seconds, if it has changed.

 

Dec 13, 2011 at 6:57 AM
Cheeso wrote:
#2 Maybe you could just copy the file locally. You obviously want the file to reside on the remote share.

Now I am confused. From the helpfile's topic "Configuring IIRF" I understood the functionality that way that the IirfGlobal.ini has to be in the installation directory of IIRF and the ini file for the website has to be in the root directory of that website (and since that is on my samba share the ini has to be there, too).
Is this not the case? There's no special reason for me to have the ini remote. So where can I put the ini locally it and how does IIRF tell that it's for that specific website?

(Since I have only one active website on that IIS installation I could make the rules global but what I read that I can't just put the rules in the global ini)

Dec 16, 2011 at 6:48 AM

There doesn't seem to be a way to set the name and path to the website Iirf.ini files in the IirfGlobal.ini

So I assume I got you wrong and having those ini files on the webserver instead on the attached share is impossible?

Coordinator
Dec 18, 2011 at 2:30 AM

The iirf.ini file goes into the physical directory that corresponds to the virtual directory for IIS. 

You do not "tell IIRF" where the IIRF.ini file is.  IIRF finds the ini file by retrieving the location of the physical dir for a vdir that corresponds to a given incoming request.  IIRF retrieves this information at runtime from the IIS configuration database.

Coordinator
Dec 18, 2011 at 2:31 AM

I think what you are saying is that the physical dir for the vdir is remote, on a share.   I don't recall testing this scenario.  It could be that the logic in IIRF is not handling your case correctly.  Please clarify if what I've described is what you are doing.

Dec 18, 2011 at 10:32 AM

> the physical dir for the vdir is remote, on a share

Yes, that's exactly how it is configured. This is set up this way because another server also retrieves from that share.
And it is like you wrote: IIRF finds the ini file by itself. This seems to work at least partly: as I wrote above the IIRF Vidr Status reports location of Ini File correctly but then fails to read it properly.

Dec 22, 2011 at 9:49 AM

Same problem. We have the website directory on a shared NAS. Could not open INI file.  Here' s the status report for our installation.

Some suggestion ? Or any possibility  to have the problem solved in a future release ?

Thank you

<!-- p,tr,td,body,a { font-family: Verdana, Arial, Helvetica; font-size: 9pt } h1 { color: #4169E1;} h2 { color: #1E90FF;} table { border: 1 solid gray; padding: 0 0 0 0;} tr td { color: Navy; } tr th { color: #00008B; background: #E6E6FA; } td {padding: 0em 1em 0em 1em; } .sm { font-size: 8pt; } .elist {margin: 1em 0em 0em 0em; color: #2F4F4F; border: 1 solid #808080; padding: 10px 1em 10px 1em; background: #F8F8FF;} -->

IIRF Status Report

IIRF Global Status

IIRF Version Ionic ISAPI Rewriting Filter (IIRF) 2.1.2.3 x86 RELEASE
Built on Nov 11 2011 07:39:27
Filter DLL C:\Program Files\Ionic Shade\IIRF 2.1\IIRF.dll 
PCRE Version 8.02 2010-03-19
IIRF User NT AUTHORITY\NETWORK SERVICE
Security Groups \Everyone
WEB-NT08\IIS_WPG
BUILTIN\Performance Log Users
BUILTIN\Users
NT AUTHORITY\SERVICE
NT AUTHORITY\Authenticated Users
NT AUTHORITY\This Organization
\LOCAL
BUILTIN\Users
IIRF Started 2011/12/22 03:00:53 W. Europe Standard Time
Current time 2011/12/22 10:22:28 W. Europe Standard Time
Server Ini file C:\Program Files\Ionic Shade\IIRF 2.1\IirfGlobal.ini 
Last Update of Ini 2011/12/21 15:24:21 W. Europe Standard Time 
  #Lines 67
  #Warnings 0
Rewrite Engine (all vdirs) ON

IIRF Vdir Status

APPL_MD_PATH /LM/W3SVC/15/ROOT
Root Vdir Ini File \\web01-clus\...website root path...\Iirf.ini
Ini file timestamp (file not found)
Last Read Attempt 2011/12/22 10:22:28 W. Europe Standard Time
#Ini Modules 0
#Lines 0
#Rules 0
#Warnings 0
#Errors 0
Log file (none)
Log level 1
Rewrite Engine ON
Rewrite Base '--'
Remote Status Inquiry disabled
Cond substring flag *
Case conversion flag #
URL Decoding ON
Iteration Limit 8
Proxy Timeouts (sec.) Resolve=30 Connect=30 Send=30 Receive=30
#Requests Processed 1
Messages:
IIRF: Could not open ini file '\\web01-clus\...website root path...\sito\Iirf.ini' (error: 2, The system cannot find the file specified.)
Dec 22, 2011 at 10:14 AM

Interesting. While I get "error 13" which seems to mean "invalid data" or something like that you get an "error 2" which obviously means IIRF can not find the file at all. Have you tried to paste the path to the file into the webserver's local browser? Does it display the file? If not the problem seems to be slightly different.

Dec 22, 2011 at 1:28 PM

I've tried, the webservers' browser display the file

Coordinator
Dec 22, 2011 at 5:41 PM

I think this is a problem and it will require an update of IIRF to correct it.

In the meantime you could try assigning a drive letter to the share, and using that drive letter.

 

Coordinator
Dec 22, 2011 at 5:42 PM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.