Plone Installieren

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen


Diese Seite muss überarbeitet werden

Diese Seite wurde als Baustelle gekennzeichnet, weil sie überarbeitet werden muss. Eine Begründung dafür findest du auf der Diskussionsseite. Bitte hilf mit, diese Seite zu verbessern!

Version

Plone: 3.2.1

Python: 2.4.5

Installation

In der Anleitung findet die Installation im Home-Verzeichnis des accountes xy00-plone statt. Die Installation von Plone 3.2.1 erfolgt weitgehend automatisiert mit Hilfe von buildout, einer Software zur Erzeugung reproduzierbarer Installationen.

Erzeugen der Umgebung mit Paste Script für das buildout

Zunächst wird mit Hilfe von Paste Script eine Umgebung erzeugt:

xyz00-plone@h99:~$ /opt/python/2.4.5/bin/paster create -t plone3_buildout plone3.2
Scriptausgabe mit Eingabeaufforderung:

Selected and implied templates:
 ZopeSkel#plone3_buildout  A buildout for Plone 3 projects

Variables:
 egg:      plone3.2
 package:  plone32
 project:  plone3.2
 [...]


Alle Eingabeaufforderungen können ohne Eingabe mit ENTER bestätigt werden, da diese Einstellungen später ersetzt werden.

Nach der Erzeugung der Umgebung muss diese einmalig initialisiert werden:

xyz00-plone@h99:~$ cd plone3.2/
xyz00-plone@h99:~/plone3.2$ /opt/python/2.4.5/bin/python2.4 ./bootstrap.py

Konfiguration und Installation mit buildout

Anschließend muss die zentrale Konfigurationsdatei durch die folgenden Inhalte ersetzt werden. Die fett markierten Einstellungen müssen individuell angepasst werden. Es können weitere Optionen nach Bedarf konfiguriert werden, um beispielsweise zusätzliche Products oder eggs zu installieren.

Shell Befehl

xyz00-plone@h99:~/plone3.2$ nano buildout.cfg

Inhalt der buildout.cfg

[buildout]
parts =
   zope2
   productdistros
   instance
   zopepy

# Change the number here to change the version of Plone being used
extends = http://dist.plone.org/release/3.2.1/versions.cfg
versions = versions

# Add additional egg download sources here. dist.plone.org contains archives
# of Plone packages.
find-links =
   http://dist.plone.org/release/3.2.1
   http://download.zope.org/ppix/
   http://download.zope.org/distribution/
   http://effbot.org/downloads

# Add additional eggs here
eggs =

# Reference any eggs you are developing here, one per line
# e.g.: develop = src/my.package
develop =

[zope2]
# For more information on this step and configuration options see:
# http://pypi.python.org/pypi/plone.recipe.zope2install
recipe = plone.recipe.zope2install
fake-zope-eggs = true
additional-fake-eggs = 
   ZODB3
url = ${versions:zope2-url}

# Use this section to download additional old-style products.
# List any number of URLs for product tarballs under URLs (separate
# with whitespace, or break over several lines, with subsequent lines
# indented). If any archives contain several products inside a top-level
# directory, list the archive file name (i.e. the last part of the URL,
# normally with a .tar.gz suffix or similar) under 'nested-packages'.
# If any archives extract to a product directory with a version suffix, list
# the archive name under 'version-suffix-packages'.
[productdistros]
# For more information on this step and configuration options see:
# http://pypi.python.org/pypi/plone.recipe.distros
recipe = plone.recipe.distros
urls =
nested-packages =
version-suffix-packages =

[instance]
# For more information on this step and configuration options see:
# http://pypi.python.org/pypi/plone.recipe.zope2instance
recipe = plone.recipe.zope2instance
zope2-location = ${zope2:location}
# ip-adress muss mit angegeben werden, da sonst der traffic nicht bei HS richtig abgerechnet werden kann.
ip-address = xyz00.hostsharing.net
user = admin:password
 http-address = 12300
ftp-address = 12301
wbdav-address = 12302
#debug-mode = on
#verbose-security = on

# If you want Zope to know about any additional eggs, list them here.
# This should include any development eggs you listed in develop-eggs above,
# e.g. eggs = Plone my.package
eggs =
   Plone
   ${buildout:eggs}
    
 
# If you want to register ZCML slugs for any packages, list them here.
# e.g. zcml = my.package my.other.package
zcml =

products =
   ${buildout:directory}/products
   ${productdistros:location}

[zopepy]
# For more information on this step and configuration options see:
# http://pypi.python.org/pypi/zc.recipe.egg
recipe = zc.recipe.egg
eggs = ${instance:eggs}
interpreter = zopepy
extra-paths = ${zope2:location}/lib/python
scripts = zopepy

Achtung: Der angegebene Benutzer wird mit dem zugewiesenen Kennwort beim ersten Start der Zope-Instanz angelegt. Es empfiehlt sich aus Sicherheitsgründen, dass Kennwort nach dem ersten Start der Zope-Instanz aus der Konfigurationsdatei zu entfernen.

Nach der Anpassung der Konfigurationsdatei buildout.cfg muss die Installation durch den Aufruf von buildout aktualisiert werden.

xyz00-plone@h99:~/plone3.1$ bin/buildout

Installation zusätzlicher Softwarepakete

Zusätzliche Softwarepakete in egg-Form können in das Verzeichnis "src" installiert und im Abschnitt "[buildout]" der "buildout.cfg" unter "eggs" und "develop" eingetragen werden. Zusätzliche Softwarepakete in "Product"-Form können in den Abschnitt "[productdistros]" eingetragen oder in der Verzeichnis "products" installiert werden. Dies gilt gleichermaßen für Eigenentwicklungen wie Softwarepakete von Drittanbietern. Starten und Stoppen der Instanz

Zope Instanz starten/stoppen

Die Zope Instanz kann über von buildout erzeugte Skripte gestartet oder gestoppt werden. Die Zope Instanz kann mehrer "Plone Sites" verwalten, so dass für jede weitere dom nur eine "Plone_ Site mit entsprechenden namen erstellt wird und die dazugehörige .htaccess erstellt werden muss.

Start
xyz00-plone@h99:~/plone3.2$ bin/instance start
Stop
xyz00-plone@h99:~/plone3.2$ bin/instance stop

Erzeugen der Plone Site

Eine laufende Instanz kann jederzeit über http://www.example.com:12300/ mit dem Webbrowser direkt angesprochen werden. Dabei ist der jeweilige Paketname und der zugewiesene Port für HTTP zu verwenden.

Mit Hilfe des Zope Management Interfaces (ZMI) wird nun eine Plone Site angelegt. Dazu wird im Webbrowser http://xyz00.hostsharing.net:12300/manage aufgerufen und nach dem Login mit den vergebenen Zugangsdaten aus der Drop Down-Liste "Plone Site" ausgewählt und per "Add" hinzugefügt. Die Plone Site sollte plone_site_example_com genannt werden.

Die laufende Plone Site kann anschließend über http://www.example.com:12300/plone_site mit Webbrowser angesprochen werden.

Konfiguration von Apache

Um die erzeugte Plone Site auch über einen registrierten Domainnamen ansprechen zu können, wird im Verzeichnis der jeweiligen Subdomain eine Konfigurationsdatei .htaccess mit dem folgenden, vorgegebenen Inhalt hinterlegt. Dabei müssen der Name des Pakets, der Name der Domain und der zugewiesene Port für HTTP angepasst werden.

xyz00-plone@h99:~$ nano ~/doms/example.com/subs/www/.htaccess

RewriteEngine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*) http://xyz00.hostsharing.net:12300/VirtualHostBase/http/www.example.com:80/plone_site_example_com/VirtualHostRoot/${escape:$1} [P,L]
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*) http://xyz00.hostsharing.net:12300/VirtualHostBase/https/www.example.com:443/plone_site_example_com/VirtualHostRoot/${escape:$1} [P,L]

WEBDAV

Um den webdav client zu aktivieren muss man in der zope.conf (die Datei ist in ~/plone3.2/parts/ folgendes hizufügen

[zope.conf]
[...]
<webdav-source-server>
   # valid keys are "address" and "force-connection-close"
   address  www.example.com1980
   force-connection-close off
</webdav-source-server>
[...]

Dieses aktiviert den webdav server unter 'http://www.example.com:1980/'

Um unter Windows das plone root directory mappen zu können, ist es am Einfachsten die Freeware "netdrive" herunter zuladen und zu benutzen. Die interne Windows lösung birgt Schwierigkeiten und ist nicht zu empfehlen siehe http://en.wikipedia.org/wiki/WebDAV