This question has been flagged
5 Replies
19727 Views

I would like to install OpenERP v8 using mod_wsgi on Apache. It should be accessible on a public domain using port 80. I keep getting 'No handler found'.

I found the instructions on how to install it with Apache/Nginx using proxy, however even openerp:service.wsgi_server.application() indicates that using proxy_mode is a 'fix'.

Has anybody installed OpenERP + Apache + mod_wsgi?

Here are the steps of my installation:

  1. Install the necessary Python libraries for the server:

    sudo apt-get install python-dateutil python-docutils python-feedparser python-gdata python-jinja2 python-ldap python-libxslt1 python-lxml python-mako python-mock python-openid python-psycopg2 python-psutil python-pybabel python-pychart python-pydot python-pyparsing python-reportlab python-simplejson python-tz python-unittest2 python-vatnumber python-vobject python-webdav python-werkzeug python-xlwt python-yaml python-zsi

  2. Create the OpenERP user that will own and run the application:

    sudo adduser --system --home=/opt/openerp --group openerp

  3. Install and configure the database server, PostgreSQL:

    sudo apt-get install postgresql

    sudo su - postgres

    createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt openerp

    Password: openerp
    

    exit

  4. Install the OpenERP server:

    wget hppt://nightly.openerp.com/trunk/nightly/src/openerp-8.0dev-latest.tar.gz

    cd /opt/openerp

    sudo tar xvf ~/openerp-8.0dev-latest.tar.gz

    sudo chown -R openerp: *

    sudo cp -a openerp-8.0dev-20140214-000101 server

  5. Install Apache:

    sudo apt-get install apache2

    sudo apt-get install libapache2-mod-wsgi

    sudo nano /etc/apache2/apache2.conf

    ServerName localhost
    
  6. Virtual host configuration:

    sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/example.com.conf

    sudo nano /etc/apache2/sites-available/example.com.conf

    ServerName localhost
    
    WSGIScriptAlias / /opt/openerp/server/openerp-wsgi.py
    WSGIDaemonProcess oe user=openerp group=users processes=2 python-path=/opt/openerp/server/ display-name=apache-openerp
    WSGIProcessGroup oe
    
    <Directory /opt/openerp/server>
        AllowOverride All
        Require all granted
    </Directory>
    

    sudo a2dissite 000-default.conf

    sudo a2ensite example.com.conf

    sudo service apache2 restart

  7. Configuring the OpenERP application:

    sudo nano /opt/openerp/server/openerp-wsgi.py

    conf['logfile'] = '/var/log/openerp/openerp-server.log'
    
    conf['addons_path'] = '/opt/openerp/server/openerp/addons'
    
    conf['db_password'] = 'openerp'
    

    sudo mkdir /var/log/openerp

    sudo chown openerp:root /var/log/openerp

    sudo service apache2 restart

Avatar
Discard

Hello. Did you make it work?

Same question, I still stucked because the wsgy script don't recognise openerp : https://www.odoo.com/forum/Help-1/question/OpenERP-8--mod_wsgi--No-module-named-openerp--addon-path-issue-53079 Any advice on the conf file and directory structure?

Best Answer

 

please check the link for more information

Deploye WSGI in Odoo.

Avatar
Discard
Best Answer

Thank you for the post, It was helped to install and configure the OpenERP v8... :)

Avatar
Discard
Best Answer

Hi Casper Madsen,

Could you share how to using uwsgi nginx on v8 trunk?

 

Thanks.

Avatar
Discard
Best Answer

Hi!

What to do at the point 6?

ServerName localhost WSGIScriptAlias / /opt/openerp/server/openerp-wsgi.py WSGIDaemonProcess oe user=openerp group=users processes=2 python-path=/opt/openerp/server/ display-name=apache-openerp WSGIProcessGroup oe <Directory /opt/openerp/server> AllowOverride All Require all granted </Directory>

Need to be the content of the file "example.com.conf" or must be added to the prevew content of the "000-default.com.conf" in "example.com.conf"?

Avatar
Discard
Best Answer

I've successfully installed trunk (v8) with uWSGI / Nginx. Works like a charm.. Here is my config from openerp-wsgi.py - you might be missing db_name?


import openerp openerp.multi_process = True # Nah! openerp.conf.server_wide_modules = ['web'] conf = openerp.tools.config

conf['addons_path'] = '/opt/openerp/blahblah/data/addons/8.0,/opt/openerp/blahblah/server/current/openerp/addons' conf['admin_passwd'] = 'secretpassword' conf['data_dir'] = '/opt/openerp/blahblah/data' conf['db_name'] = 'blahblah' conf['db_host'] = 'localhost' conf['db_user'] = 'secretuser' conf['db_port'] = '5432' conf['db_password'] = 'othersecretpassword' conf['dbfilter'] = '^blahblah$' conf['list_db'] = False conf['logfile'] = '/opt/openerp/blahblah/logs/blahblah.log'

application = openerp.service.wsgi_server.application openerp.service.server.load_server_wide_modules()

Avatar
Discard