Difference between revisions of "Installing Pier on Ubuntu"

From Organic Design wiki
m
(mod_rewrite)
Line 1: Line 1:
 
<noinclude><noinclude>{{Procedure}}</noinclude></noinclude>
 
<noinclude><noinclude>{{Procedure}}</noinclude></noinclude>
 
+
==Set Up a Pier Image==
 
 
 
 
 
 
== Simple Setup of a Pier Image on a  Webserver ==
 
 
* Download Pier-2.0-OneClick.zip from http://www.piercms.com/download
 
* Download Pier-2.0-OneClick.zip from http://www.piercms.com/download
 
* Unzip into any directory, but probably /var/www/domains/Pier.app for an OD install
 
* Unzip into any directory, but probably /var/www/domains/Pier.app for an OD install
Line 25: Line 21:
 
</pre>
 
</pre>
 
* Restart
 
* Restart
* Navigate to http://yourdomain:8080
+
* Navigate to <nowiki>http://organicdesign.co.nz:8080</nowiki>
*To start Pier manually, as root:
+
* To start Pier manually, as root:
 
{{code|
 
{{code|
 
cd /var/www/domains/Pier.app
 
cd /var/www/domains/Pier.app
 
./Pier.sh
 
./Pier.sh
 
}}
 
}}
 
Set Up a Pier Image
 
 
    * Download Pier-2.0-OneClick.zip from http://www.piercms.com/download
 
    * Unzip into any directory, but probably /var/www/domains/Pier.app for an OD install
 
    * Change organicdesign.co.nz (below) to whatever your hostname is, localhost for a local setup
 
    * As root, change ownership to www-data:
 
 
chown -R www-data:www-data Pier.app
 
 
    * Edit /etc/rc.local and add the following BASH script just before exit 0 (note you will need to change paths if you unzipped into a directory other than /var/www/domains)
 
 
#!/bin/bash
 
# settings
 
USER="www-data"
 
VM="/var/www/domains/Pier.app/Contents/Linux/squeakvm"
 
VM_PARAMS="-mmap 256m -vm-sound-null -vm-display-null"
 
IMAGE="/var/www/domains/Pier.app/Contents/Resources/Pier.image"
 
# start the vm
 
exec \
 
setuidgid "$USER" \
 
"$VM" $VM_PARAMS "$IMAGE"
 
 
    * Restart
 
    * Navigate to http://organicdesign.co.nz:8080
 
    * To start Pier manually, as root:
 
 
cd /var/www/domains/Pier.app
 
 
./Pier.sh
 
  
  
==Enable Pier Content Alongside Apache==
+
==Serve Pier Content Alongside Apache==
  
 
This is assuming an OD server, as above.
 
This is assuming an OD server, as above.
Line 73: Line 39:
 
}}
 
}}
 
* Then edit /etc/apache2/mods-enabled/proxy.conf, by adding Allow from organicdesign.co.nz as below:  
 
* Then edit /etc/apache2/mods-enabled/proxy.conf, by adding Allow from organicdesign.co.nz as below:  
{{code |
+
<pre>
<nowiki>
 
 
<IfModule mod_proxy.c>
 
<IfModule mod_proxy.c>
  
Line 101: Line 66:
  
 
</IfModule>
 
</IfModule>
</nowiki>
+
</pre>
 
 
}}
 
 
 
 
* Finally add, at the top of the mod_rewrite in /etc/apache2/sites-available/default, directly under RewriteEngine On:  
 
* Finally add, at the top of the mod_rewrite in /etc/apache2/sites-available/default, directly under RewriteEngine On:  
 
{{code |
 
{{code |
<nowiki>ProxyPreserveHost On
+
ProxyPreserveHost On
RewriteCond %{HTTP_HOST} ^pier\.organicdesign.co.nz RewriteRule (.*) http://organicdesign.co.nz:8080/$1 [P,L] </nowiki>
+
RewriteCond %{HTTP_HOST} ^pier\.organicdesign.co.nz RewriteRule (.*) <nowiki>http://organicdesign.co.nz:8080/$1 [P,L] </nowiki>
 
}}
 
}}
 +
 +
== References ==
 +
*[http://book.seaside.st/book/table-of-contents?_s=mOCL9TAcnms7KUZC&_k=y5VsfJ-0&_n&11 Dynamic Web Development with Seaside]
 +
*[http://library.linode.com/frameworks/seaside/ Deploy Smalltalk Applications with Seaside]

Revision as of 00:00, 18 March 2011

Procedure.svg Installing Pier on Ubuntu
Organic Design procedure

Set Up a Pier Image

  • Download Pier-2.0-OneClick.zip from http://www.piercms.com/download
  • Unzip into any directory, but probably /var/www/domains/Pier.app for an OD install
  • As root, change ownership to www-data:
chown -R www-data:www-data Pier.app
  • Edit /etc/rc.local and add the following BASH script just before exit 0 (note you will need to change paths if you unzipped into a directory other than /var/www/domains)
#!/bin/bash
# settings
USER="www-data"
VM="/var/www/domains/Pier.app/Contents/Linux/squeakvm"
VM_PARAMS="-mmap 256m -vm-sound-null -vm-display-null"
IMAGE="/var/www/domains/Pier.app/Contents/Resources/Pier.image"
# start the vm
exec \
setuidgid "$USER" \
"$VM" $VM_PARAMS "$IMAGE"
  • Restart
  • Navigate to http://organicdesign.co.nz:8080
  • To start Pier manually, as root:
cd /var/www/domains/Pier.app

./Pier.sh


Serve Pier Content Alongside Apache

This is assuming an OD server, as above.

  • Add pier.organicdesign.co.nz to /etc/hosts
  • As root, enable proxy:
a2enmod proxy proxy_http
  • Then edit /etc/apache2/mods-enabled/proxy.conf, by adding Allow from organicdesign.co.nz as below:
<IfModule mod_proxy.c>

# If you want to use apache2 as a forward proxy, uncomment the
# 'ProxyRequests On' line and the <Proxy *> block below.
# WARNING: Be careful to restrict access inside the <Proxy *> block.
# Open proxy servers are dangerous both to your network and to the
# Internet at large.
#
# If you only want to use apache2 as a reverse proxy/gateway in
# front of some web application server, you DON'T need
# 'ProxyRequests On'.

<Proxy *>
        AddDefaultCharset off
        Order deny,allow
#        Deny from all
#        Allow from .example.com
        Allow from organicdesign.co.nz
</Proxy>

# Enable/disable the handling of HTTP/1.1 "Via:" headers.
# ("Full" adds the server version; "Block" removes all outgoing Via: headers)
# Set to one of: Off | On | Full | Block
ProxyVia On

</IfModule>
  • Finally add, at the top of the mod_rewrite in /etc/apache2/sites-available/default, directly under RewriteEngine On:
ProxyPreserveHost On

RewriteCond %{HTTP_HOST} ^pier\.organicdesign.co.nz RewriteRule (.*) http://organicdesign.co.nz:8080/$1 [P,L]

References