OpenERP Web Installation¶
Here is the installation instructions for Debian based Linux distributions. Tested on Debian Etch and Ubuntu Hardy. The procedure might work with other Linux or similar distributions. See the docs on how to install the specified Packages on your favourite distro.
Python >= 2.4
CherryPy >= 3.1.2
Mako >= 0.2.4
Babel >= 0.9.4
FormEncode >= 1.2.2
simplejson >= 2.0.9
pyparsing >= 1.5.0
Remember, this version requires CherryPy3 which is conflicting with CherryPy2 (used by TurboGears), so you can't install both in system area. To overcome with the issue, we added support for local library installation for OpenERP Web. In that case, just download the source package and do the following...
$ sudo apt-get install python python-dev build-essential $ sudo apt-get install python-setuptools
This will install dependencies required for the following
$ cd /path/to/openerp-web/lib $ ./populate.sh $ cd ..
This will install all required dependencies in private lib directory, and you don't need to install anything...
$ sudo easy_install -U openerp-web
all other dependencies will be installed automatically by setuptools...
Locate the config/default.cfg in the installed EGG, and make appropriate changes, especially:
[openerp] server = "localhost" port = 8070 protocol = "socket"
server is the OpenERP server host
port is the OpenERP server port which is by default 8070 for NET-RPC or 8069 for XML(S)-RPC. The web server itself listens by default on port 8080 and connects to the OpenERP server using one of the above-mentioned ports. The final web browser connects to the Web server, so usually port 8080.
protocol is the protocol to be used (socket for NET-RPC, http for XML-RPC or https for XMLS-RPC)
Now start the web server with openerp-web command:
If you see message showing IOError: Port 8080 not free on '0.0.0.0' make sure no other application is running on the specified port (8080 is default).
You can change port by changing server.socket_port value in config/openerp-web.cfg.
If everything is fine, open your favourite web browser and type http://localhost:8080/, and your can see welcome page with login screen.
Please make sure cookies are enabled in your browser.
Of course, OpenERP Server must be running at that time. You should create a database from the DBAdmin interface by clicking on Databases button that you can see on the login screen. After creating a new database, login with the admin/admin or demo/demo user to see OpenERP in action...
Please make sure that the system time is properly set otherwise web browsers might fail to establish sessions. We strongly recommend you to synchronize system clock with NTP...
Run as service (daemon)¶
This has been tested on ubuntu only.To run openerp Web as a service you need to first locate the openerp_web-5.0.0-py2.5.egg ad copy the openerp-web file to etc/init.d/. An egg is a python package. "Eggs are to Pythons as Jars are to Java...".You can find the documentation about eggs at http://peak.telecommunity.com/DevCenter/PythonEggs The location of the egg depends on your distribution. For example path to openerp_web-5.0.6-py2.5.egg in Ubuntu 8.10 is:
$ sudo cp /path/to/openerp_web-5.0.0-py2.5.egg/scripts/openerp-web /etc/init.d/ $ sudo cp /path/to/openerp_web-5.0.0-py2.5.egg/config/openerp-web.cfg /etc/ $ sudo chmod +x /etc/init.d/openerp-web
edit /etc/init.d/openerp-web using any editor example:
$ sudo gedit /etc/init.d/openerp-web
USER="your system username"
and edit /etc/openerp-web.cfg:
$ sudo gedit /etc/openerp-web.cfg
log.access_file = "/var/log/openerp-web/access.log" log.error_file = "/var/log/openerp-web/error.log"
Create /var/log/openerp-web/ with proper ownership
$ sudo mkdir /var/log/openerp-web/ $ sudo chown username /var/log/openerp-web/
Now run following command to start the OpenERP Web automatically on system startup (Debian/Ubuntu).
$ sudo update-rc.d openerp-web defaults
Start the deamon:
$ sudo /etc/init.d/openerp-web start
The init script is compatible with all major Linux distributions. Please check docs of your distribution on how to enable services.
The following text describes how to configure OpenERP Web for production environment over HTTPS with Apache2.
mod_proxy + mod_ssl (Apache2)
See Apache manual for more information.
<VirtualHost *:443> SSLEngine on SSLCertificateFile /etc/apache2/ssl/apache.pem <Proxy *> Order deny,allow Allow from all </Proxy> ProxyRequests Off ProxyPass / http://127.0.0.1:8080/ ProxyPassReverse / http://127.0.0.1:8080/ RequestHeader set "X-Forwarded-Proto" "https" # Fix IE problem (http error 408/409) SetEnv proxy-nokeepalive 1 </VirtualHost>
OpenERP Web configuration
tools.proxy.on = True
Block the OpenERP Web server port (firewall)
$ iptables -A INPUT -i lo -j ACCEPT $ iptables -A INPUT -p tcp --dport 8080 -j REJECT
Don't block the localhost/184.108.40.206 (the first rule)
Web Browser Compatibilities¶
OpenERP Web is known to work best with Mozilla based web browsers. Here is the list of supported browsers.
Firefox >= 1.5
Internet Explorer >= 6.0
Safari >= 3.0
Google Chrome >= 1.0
Opera >= 9.0
Your browser should have the Flash plugin installed because OpenERP Web uses some Flash components.
Here is how to install the Flash plugin on an Ubuntu system:
$ sudo apt-get install flashplugin-nonfree