From: Demian K. <dem...@vi...> - 2010-02-05 17:41:14
|
So if you take the period out and go to /Record/b24260836, you get a "record not found" error rather than a 403 forbidden error? If that's the case, it definitely sounds like Apache is getting upset about something, though I'm not sure what. Have you looked at your Apache error logs? These might offer some clues. Also, in case mod_rewrite is part of the problem, it might be worth turning on the RewriteLog setting to debug what's going on -- see: http://httpd.apache.org/docs/2.0/mod/mod_rewrite.html#rewritelog I did try accessing a ".b#####" URL on my test server, and I didn't get a forbidden error, so I don't see why you're having the problem... but maybe investigating some of these Apache details will provide a clue. Good luck, and feel free to share your findings for further brainstorming. - Demian ________________________________________ From: CJ O'Hara [oh...@gm...] On Behalf Of C.J. O'Hara [cj...@ma...] Sent: Friday, February 05, 2010 11:48 AM To: Demian Katz Cc: vuf...@li... Subject: Re: [VuFind-Tech] Blank Holdings The box that I am working on is a non production non public box. It is a standard 403 error and only occurs when id is set to a .b########. The URL that comes up in such cases is http://server1/Record/.b########. When I load them in with the oclc's it comes up with the whole page (however with no holding data) which leads me to believe that I may need to take out the periods. Thanks for the link. I'll give that a shot unless there is a way for the id not to be the link url (which may be an easier way). Forbidden You don't have permission to access /Record/.b24260836 on this server. ________________________________ Server at server1 Port 80 Thanks for your time. C.J. On Feb 5, 2010, at 9:41 AM, Demian Katz wrote: You are correct -- you need the bib ID rather than the OCLC number in your index in order for the driver to work correctly. Do you mind sharing an exact URL and the Forbidden message that you are seeing? If you turn on debug, you might even get some extra details that could help. It sounds like a URL isn't getting built correctly or an Apache rewrite rule isn't being interpreted properly, but without a specific example, I'm not sure exactly what might be going wrong. If it does turn out that you need to strip the periods on import (which hopefully won't be the case), it is possible -- the SolrMarc importer supports regular expressions, so you could set up rules to do what you need to do. There is an example of stripping trailing periods in the comments here: http://vufind.org/jira/browse/VUFIND-184 Stripping leading periods would be fairly similar. - Demian From: CJ O'Hara [mailto:oh...@gm...] On Behalf Of C.J. O'Hara Sent: Friday, February 05, 2010 11:08 AM To: Demian Katz Cc: vuf...@li...<mailto:vuf...@li...> Subject: Re: [VuFind-Tech] Blank Holdings Thanks for all of your help. I discovered that the 001 field was OCLC not our bib number which is required (I think) for the Innovative driver. Now it is pulling the ID correctly (as .b########) but when I click on a Record I get a "Forbidden" message, but only when there is a period in front of the bib number. Do I need to change permissions or is there a way to get rid of the period on import? Once again. Any help is appreciated. C.J. On Feb 5, 2010, at 7:30 AM, Demian Katz wrote: When you get the empty result, what ID value is getting passed in to getStatus()? I notice in your example code, you prefix the bib number with ".b". Is that prefix also there when the ID value is retrieved from the Solr index? If the MARC data you are importing includes only the bib number without the ".b" prefix, but the ".b" prefix is needed to get results from the Innovative driver, that might explain your problem. - Demian From: CJ O'Hara [mailto:oh...@gm...] On Behalf Of C.J. O'Hara Sent: Thursday, February 04, 2010 6:02 PM To: Demian Katz Cc: vuf...@li...<mailto:vuf...@li...> Subject: Re: [VuFind-Tech] Blank Holdings When I did a var_dump I got no results array(0) {} I believe was the output. I did a print_r to verify and received Array ( ) which seemed to reinforce the idea that I wasn't getting anything out of the getStatus array. So I went into the Innovative Driver and added a dump of the getStatus function $id = ".b12186442"; $catalog = new Innovative(); $ret = $catalog->getStatus($id); var_dump($ret); and it returned the following. array(1) { [0]=> array(9) { [""]=> string(0) "" ["id"]=> NULL ["location"]=> string(18) "MSC Main 2nd Floor" ["reserve"]=> string(2) "No" ["LOCATION"]=> string(94) "MSC Main 2nd Floor<http://www.mesastate.edu/msclibrary/documents/FloorPlans2.pdf>" ["callnumber"]=> string(10) "HV1598.H36" ["CALL #"]=> string(78) "HV1598.H36</search%7ES93?/cHV1598.H36/chv+1598+h36/-3,-1,,E/browse>" ["availability"]=> int(0) ["STATUS"]=> string(8) "ON SHELF" } } So I am unsure what is going on. I know I'm overlooking something I hope you guys see what's I've overlooked and give me some information. C.J. On 2/4/2010 13:01, Demian Katz wrote: The most likely cause of the notice you're seeing is an empty result coming back from the getStatus() method of the Innovative driver. I would recommend looking at that code more closely -- I think that's your most likely point of failure. You might start by dumping out the return value from that function by adding a "var_dump($result)" around line 51 of web/services/Record/Holdings.php. If that doesn't tell you much, dig into getStatus itself and see if you can figure out what's going on. If you come up with more clues but no conclusion, feel free to share them here. - Demian From: C.J. O'Hara [mailto:cj...@ma...] Sent: Thursday, February 04, 2010 2:56 PM To: vuf...@li...<mailto:vuf...@li...> Subject: [VuFind-Tech] Blank Holdings Hello all, I have recently installed a test instance of vufind. I have never had a piece of open source software just WORK so easily. The problem that I am getting is that I am not seeing any information in holdings. I self verified the driver (Innovative) and it appears to be working as expected. However the Holdings display is empty and I am receiving the following error with debug mode turned on "Notice: Undefined variable: holdings in /usr/local/vufind/web/services/Record/Holdings.php on line 61' any help that you could give me on this would be very much appreciated. C.J. O'Hara Web Developer Marmot Library Network. |