|
Mailing Lists
|
Home /
Groups /
ColdFusion Talk (CF-Talk)
(ot) Ionic's Isapi Rewrite Filter and Site Crash
If anybody is familiar with Ionic's Isapi Rewrite Filter...Les Mizzell 01/07/09 09:15 P I had the same problem at one point and I think it turned out to be a badMichael Dinowitz 01/07/09 10:52 P > 1. is the ini file of the same filename as the dll and are they in the sameLes Mizzell 01/07/09 11:30 P What I meant was testing a file in a physical directory structure like youMichael Dinowitz 01/07/09 11:49 P Les...Andy Matthews 01/08/09 01:07 P If you're using IIS7, there is a URL rewrite module for the IISMC.Jason Durham 01/08/09 06:40 P JasLes Mizzell 01/10/09 02:28 P > Found one oddity though...Dave Watts 01/10/09 02:30 P If anybody is familiar with Ionic's Isapi Rewrite Filter... I have asked folks over on the Ionic's forum about this, but there's not much traffic there and I *bet* somebody here can answer before I get replies. Sorry for the OT, but I need to figure this out sooner than later! First, I'm *not* a server administrator. I know just enough to make small tweaks and get myself into trouble. So be kind! Trying to set up my first rewrite: RewriteRule ^/attorney/([^/]+)$ /lawyers/get-bio.cfm?attorney=$1 Should rewrite: "www.mysite.com/attorney/bob_smith" to "www.mysite.com/lawyers/get-bio.cfm?attorney=bob_smith". Correct? The code above is the *only* thing in the .ini file. Do I need anything else? I placed the .dll and .ini file in a folder on the server. Went into the IIS Admin (IIS 7 I think...) and added the.dll to the ISAPI filters. Didn't do anything else. Was planning on restarting the server late this evening when site activity was quite.However, the site immediately went down. "There's a problem with the resource you're trying to access.... 500 error...' I removed the filter from the ISAPI filter window, and the site was back up. Tried a second time just to be sure. Yup - site went down immediately. No stop/start IIS. OK, now I'm afraid to do anything else. I can't afford to take the site down again by mistake. I'll happily attempt to list other settings or stuff from log files if needed to help me figure what I've got wrong. You *might* have to tell me where to look though... The site in question is a Coldfusion site, but sections are .net. There are two aspnet_filters listed already. Possible conflict? Log file shows: "The HTTP Filter DLL C:\Windows\System32\IsapiRewrite\IsapiRewrite4.dll failed to load. The data is the error." Not sure what to do next. Help? I had the same problem at one point and I think it turned out to be a bad regex. A few questions: 1. is the ini file of the same filename as the dll and are they in the same directory? 2. are you making sure that the rewriterule is both case insensitive and is set to be the last rule checked? 3. have you put an index.cfm into the "www.mysite.com/attorney/bob_smith" directory and looked at the page results in debug mode (or dumped out the cgi vars)? As it stands now, the regex will fail if "www.mysite.com/attorney/bob_smith/" is the page requested. It will also fail for any subdirectories of bob_smith or any file in the bob_smith directory. If your goal is to always get the subdirectory directly under attorney then use this: RewriteRule ^/attorney/([^/]+) /lawyers/get-bio.cfm?attorney=$1 [I,L] This will avoid any problems with a trailing slash or file name in the request. As a side note, bob-smith is more valuable seo wise. Google looks at a dash as a space. An underscore is a literal underscore character, not a space. ----- Excess quoted text cut - see Original Post for more ----- > 1. is the ini file of the same filename as the dll and are they in the same > directory? Yes > 2. are you making sure that the rewriterule is both case insensitive and is > set to be the last rule checked? Going to be honest. I'm not 100% sure of the syntax. I took one of the example files that was close and did a mod for my purposes. When I installed it - it was the last filter in the IIS ISAPI list. > 3. have you put an index.cfm into the "www.mysite.com/attorney/bob_smith" > directory and looked at the page results in debug mode (or dumped out the > cgi vars)? Couldn't test that. Adding the dll took out the entire site and threw a 500 error for *any* page request, not just the url I'm wishing to redirect. I'll re-download the Ionic files in case something got corrupted and try again at some *very* late hour when hopefully nobody will notice a short outage if it doesn't work again. > RewriteRule ^/attorney/([^/]+) /lawyers/get-bio.cfm?attorney=$1 [I,L] Will try this once I get a successful installation that doesn't crash! What I meant was testing a file in a physical directory structure like you have below. Creating an attorney directory and a bob_smith subdirectory. The index.cfm that is run may tell you more based on the debug info. But this may be moot as the regex I gave below may fix the problem. Or maybe not. :) ----- Excess quoted text cut - see Original Post for more ----- Les... You have to "turn on" ISAPI-REWRITE like so: ##------copy here------------ [ISAPI_Rewrite] RewriteRule ^/attorney/([^/]+)$ /lawyers/get-bio.cfm?attorney=$1 ##------copy here------------ If anybody is familiar with Ionic's Isapi Rewrite Filter... I have asked folks over on the Ionic's forum about this, but there's not much traffic there and I *bet* somebody here can answer before I get replies. Sorry for the OT, but I need to figure this out sooner than later! First, I'm *not* a server administrator. I know just enough to make small tweaks and get myself into trouble. So be kind! Trying to set up my first rewrite: RewriteRule ^/attorney/([^/]+)$ /lawyers/get-bio.cfm?attorney=$1 Should rewrite: "www.mysite.com/attorney/bob_smith" to "www.mysite.com/lawyers/get-bio.cfm?attorney=bob_smith". Correct? The code above is the *only* thing in the .ini file. Do I need anything else? I placed the .dll and .ini file in a folder on the server. Went into the IIS Admin (IIS 7 I think...) and added the.dll to the ISAPI filters. Didn't do anything else. Was planning on restarting the server late this evening when site activity was quite.However, the site immediately went down. "There's a problem with the resource you're trying to access.... 500 error...' I removed the filter from the ISAPI filter window, and the site was back up. Tried a second time just to be sure. Yup - site went down immediately. No stop/start IIS. OK, now I'm afraid to do anything else. I can't afford to take the site down again by mistake. I'll happily attempt to list other settings or stuff from log files if needed to help me figure what I've got wrong. You *might* have to tell me where to look though... The site in question is a Coldfusion site, but sections are .net. There are two aspnet_filters listed already. Possible conflict? Log file shows: "The HTTP Filter DLL C:\Windows\System32\IsapiRewrite\IsapiRewrite4.dll failed to load. The data is the error." Not sure what to do next. Help? It sounds as though the IIS Worker Process does not have permissions to access the ISAPI filter. I believe you're actually running IIS 6 due to the descriptions you've given. Check the identity of the application pool executing the website, and then give that identity read and execute permission to the ISAPI filter file. If that doesn't do it, let me know. - Matt Small ----- Excess quoted text cut - see Original Post for more ----- If you're using IIS7, there is a URL rewrite module for the IISMC. http://learn.iis.net/page.aspx/460/using-url-rewrite-module/ If anybody is familiar with Ionic's Isapi Rewrite Filter... I have asked folks over on the Ionic's forum about this, but there's not much traffic there and I *bet* somebody here can answer before I get replies. Sorry for the OT, but I need to figure this out sooner than later! First, I'm *not* a server administrator. I know just enough to make small tweaks and get myself into trouble. So be kind! Trying to set up my first rewrite: RewriteRule ^/attorney/([^/]+)$ /lawyers/get-bio.cfm?attorney=$1 Should rewrite: "www.mysite.com/attorney/bob_smith" to "www.mysite.com/lawyers/get-bio.cfm?attorney=bob_smith". Correct? The code above is the *only* thing in the .ini file. Do I need anything else? I placed the .dll and .ini file in a folder on the server. Went into the IIS Admin (IIS 7 I think...) and added the.dll to the ISAPI filters. Didn't do anything else. Was planning on restarting the server late this evening when site activity was quite.However, the site immediately went down. "There's a problem with the resource you're trying to access.... 500 error...' I removed the filter from the ISAPI filter window, and the site was back up. Tried a second time just to be sure. Yup - site went down immediately. No stop/start IIS. OK, now I'm afraid to do anything else. I can't afford to take the site down again by mistake. I'll happily attempt to list other settings or stuff from log files if needed to help me figure what I've got wrong. You *might* have to tell me where to look though... The site in question is a Coldfusion site, but sections are .net. There are two aspnet_filters listed already. Possible conflict? Log file shows: "The HTTP Filter DLL C:\Windows\System32\IsapiRewrite\IsapiRewrite4.dll failed to load. The data is the error." Not sure what to do next. Help? Jas > If you're using IIS7, there is a URL rewrite module for the IISMC. Oh yea! Got this one to work! Jezz, this is way cool, so I can get all my bio pages to look like "www.mysite.com/attorney/Bob-Smith" now. Found one oddity though... www.mysite.com/attorney/Bob-Smith maps to: www.mysite.com/lawyers/get-attorney-bio.cfm?lawyer=Bob-Smith When accessing the using the shortened url, image files don't want to load unless I put in absolute urls for them. <img src="http://www.mysite.com/images/bob-s.jpg" /> Relative urls won't work, unless you're accessing the page directly using the long url. Thanks to everybody that chimed in on this one! ----- Excess quoted text cut - see Original Post for more ----- That's not really odd at all, but you can address it using the BASE HREF tag in HTML. Dave Watts, CTO, Fig Leaf Software http://www.figleaf.com/ Fig Leaf Software provides the highest caliber vendor-authorized instruction at our training centers in Washington DC, Atlanta, Chicago, Baltimore, Northern Virginia, or on-site at your location. Visit http://training.figleaf.com/ for more information!
|
March 21, 2010
|
Latest Fusion Authority Articles
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||