Displaying static HTML website within Plone 5

I'd like to display a static HTML website within Plone 5.0.5 (created using httrack). In the past I've used Reflecto to connect to the underlying file system and I'm trying xmldirector-plonecore 2.0.2 as a Plone5 alternative to see if I can connect to the html website content and display within Plone5.0.5. I've followed the video at Reflecto alternative for Plone 5, but after entering XML director core settings the system cannot seem to find the files (see screenshots).

I'd be grateful for any suggestions on the possibility of using xmldirector-plonecore for this purpose, or of any other approach that may work. I prefer to display a static archived site as the alternative of creating Plone5 content would take considerably longer.


Plone 5.0.5 (5015)
CMF 2.2.10
Zope 2.13.24
Python 2.7.10 (default, Aug 29 2016, 00:17:53) [GCC 4.4.7 20120313 (Red Hat 4.4.7-17)]
PIL 3.2.0 (Pillow)
Centos 6.8

I also found this error in site setup > @@xmldirector-core-lockmanager
Traceback (innermost last):
  Module ZPublisher.Publish, line 138, in publish
  Module ZPublisher.mapply, line 77, in mapply
  Module ZPublisher.Publish, line 48, in call_object
  Module Products.Five.browser.metaconfigure, line 485, in __call__
  Module Products.Five.browser.pagetemplatefile, line 125, in __call__
  Module Products.Five.browser.pagetemplatefile, line 59, in __call__
  Module zope.pagetemplate.pagetemplate, line 132, in pt_render
  Module five.pt.engine, line 98, in __call__
  Module z3c.pt.pagetemplate, line 163, in render
  Module chameleon.zpt.template, line 261, in render
  Module chameleon.template, line 191, in render
  Module chameleon.template, line 171, in render
  Module 1a3d3364a00df12755f0ed96386bff23.py, line 740, in render
  Module 1b4cfcb2bb53da19c84bed472467b4f4.py, line 1223, in render_master
  Module 1b4cfcb2bb53da19c84bed472467b4f4.py, line 420, in render_content
  Module 1a3d3364a00df12755f0ed96386bff23.py, line 728, in __fill_content_core
  Module 1a3d3364a00df12755f0ed96386bff23.py, line 166, in render_content_core
  Module five.pt.expressions, line 161, in __call__
  Module xmldirector.plonecore.browser.lockmanager, line 32, in entries
  Module xmldirector.plonecore.browser.api, line 60, in generic_query
  Module requests.sessions, line 487, in get
  Module requests.sessions, line 475, in request
  Module requests.sessions, line 579, in send
  Module requests.sessions, line 653, in get_adapter
InvalidSchema: No connection adapters were found for 'file://home/exist/restxq/all-locks.json'

 - Expression: "view/entries"
 - Filename:   ... 2-py2.7.egg/xmldirector/plonecore/browser/lockmanager.pt
 - Location:   (line 25: col 30)
 - Source:     <tal:def define="result view/entries">
 - Arguments:  repeat: {...} (0)
               template: <ViewPageTemplateFile - at 0x7f190c4aa150>
               views: <ViewMapper - at 0x7f19079d6b10>
               modules: <instance - at 0x7f1915442518>
               args: <tuple - at 0x7f192394c050>
               here: <ImplicitAcquisitionWrapper plonesite2 at 0x7f190f13ae10>
               user: <ImplicitAcquisitionWrapper - at 0x7f190eb845a0>
               loop: {...} (0)
               nothing: <NoneType - at 0x784160>
               container: <ImplicitAcquisitionWrapper plonesite2 at 0x7f190f13ae10>
               request: <instance - at 0x7f1907d5add0>
               wrapped_repeat: <SafeMapping - at 0x7f1907905940>
               traverse_subpath: <list - at 0x7f1907d5a638>
               default: <object - at 0x7f1923922be0>
               context: <ImplicitAcquisitionWrapper plonesite2 at 0x7f190f13ae10>
               view: <SimpleViewClass from /home/user/plone505/buildout-cache/eggs/xmldirector.plonecore-2.0.2-py2.7.egg/xmldirector/plonecore/browser/lockmanager.pt xmldirector-core-lockmanager at 0x7f190c34e410>
               translate: <function translate at 0x7f1907892230>
               root: <ImplicitAcquisitionWrapper Zope at 0x7f190ec51b90>
               options: {...} (0)
               target_language: <NoneType - at 0x784160>

File a bug report:


Issue posted.

Apart from the error: your approach is not suitable for rendering a scraped website within Plone - this will never reasonably work with a mixture of Plone and other site markup and styles and scripts...wrong approach.


Please could you advise what an optimal approach might be? Trying to display a static HTML site in Plone is not recommended?

This has nothing to do with Plone. This is not working properly with any other CMS for the reasons given. Use an Iframe or Diazo for styling a remote site within the Plone look and feel.


I tend to use diazo and include the static html inside the theme. You can use rules to place it only in certain parts of the site.

Two other approches I imagine:

I think you could also use Zope (not Plone) and dump the static HTML into a Zope folder and serve from there

Thanks for all the suggestions. I think the first approach I'll try is to use a Zope folder.... will look into this.

I don't understand why are you trying to do so: if you have a static HTML website, serve it using nginx… period, problem solved, zero complexity associated; this has nothing to do with Plone.

as @zopyx mentioned, this is the wrong approach.