PETER BARKER
newbarker at btinternet.com
Thu Mar 8 19:27:33 EST 2007
Graham, That doesn't work because it's the client (browser) that constructs the fully qualified path to the image based on the path of the current resource (now .../ClientArea.py), and the path in the link. I got a 404 when I tried this suggestion. Here's the code of a stripped down version of the problem... INDEX.PSP: <html> <head> <title>Test</title> </head> <body> <img src="AnImage.jpg"/> <br> <a href="ClientArea.py/entryPoint">Clients' Area</a> </body> </html> CLIENTAREA.PY: from mod_python import psp def entryPoint(req): req.content_type='text/html' return psp.PSP(req,filename='index.psp').run() APACHE CONFIGURATION: <Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/PSPExample"> AddHandler mod_python .py .psp PythonHandler mod_python.publisher | .py PythonHandler mod_python.psp | .psp PythonDebug On </Directory> Regards, Pete Graham Dumpleton <graham.dumpleton at gmail.com> wrote: On 09/03/07, PETER BARKER wrote: > I have a website composed of some simple Python Server Page files and images > in the same directory. The images are referenced from the pages without any > qualification e.g. or About > us. If the page is on > http://localhost/company_name/index.psp, this works as > http://localhost/company_name/theimage.jpg or > http://localhost/company_name/about.psp is accessible. So > far so good! > > I am adding a section to the website using the mod_python publisher handler. > This will be implemented in a module called ClientArea.py. As part of this > module, I want to be able to use the existing PSP files as templates and > insert only the content relevant to the module. Assume I'm calling a > function called "entryPoint" within this module, then the browser is now > pointing at > http://localhost/company_name/ClientArea.py/entryPoint. I > am now having problems with the internal links because the unqualified link > seems to be referring to an entity withing ClientArea.py - e.g. > http://localhost/company_name/ClientArea.py/theimage.jpg. > This resource doesn't exist though! > > I don't really want to duplicate the PSP pages and have one version with > "../" prefixed. I also don't want to fully qualify the links. > > I welcome suggestions on what I should be doing here! When working out relative pathnames, PSP will do the equivalent of: os.path.dirname(req.filename) to determine the base directory. For mod_python.publisher this will not be want you want. Provided you are using a new enough version of mod_python, before you invoke PSP template, set: req.filename = '/some/directory/containing/psp/files/' Ie., set it name of directory where PSP files are located. Ensure it has a trailing slash. BTW, I haven't tried this, but I think it should work. Graham -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mm_cfg_has_not_been_edited_to_set_host_domains/pipermail/mod_python/attachments/20070309/29150fe8/attachment.html
|