Skip to Content
Menu
This question has been flagged
13 Replies
7247 Views

Hi, after change the conf file to port 80

the following error displayed

Traceback (most recent call last):
  File "/usr/lib64/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib64/python2.6/threading.py", line 484, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/python2.6/site-packages/openerp-7.0_20130506_231027-py2.6.egg/openerp/service/wsgi_server.py", line 436, in serve
    httpd = werkzeug.serving.make_server(interface, port, application, threaded=True)
  File "/usr/lib/python2.6/site-packages/werkzeug/serving.py", line 402, in make_server
    passthrough_errors, ssl_context)
  File "/usr/lib/python2.6/site-packages/werkzeug/serving.py", line 334, in __init__
    HTTPServer.__init__(self, (host, int(port)), handler)
  File "/usr/lib64/python2.6/SocketServer.py", line 402, in __init__
    self.server_bind()
  File "/usr/lib64/python2.6/BaseHTTPServer.py", line 108, in server_bind
    SocketServer.TCPServer.server_bind(self)
  File "/usr/lib64/python2.6/SocketServer.py", line 413, in server_bind
    self.socket.bind(self.server_address)
  File "<string>", line 1, in bind
error: [Errno 13] Permission denied

can anyone help?

Update :

The OS is CENTOS6.3.

The conf file is :

[options]

xmlrpcs_port = 8071
xmlrpc_port = 80
xmlrpc = True
xmlrpcs = True
xmlrpcs_interface =
xmlrpc_interface =

static_http_enable = False
static_http_document_root = None

without_demo = False
unaccent = False
syslog = False
logrotate = True
test_report_directory = False
list_db = True
timezone = False
test_file = False
secure_pkey_file = server.pkey
workers = 0
log_level = info
admin_passwd = BLANKOUT
static_http_url_prefix = None
limit_request = 8192
test_commit = False
proxy_mode = False
demo = {}
dbfilter = .*
login_message = False
import_partial =
pidfile = /var/run/openerp/openerp-server.pid
osv_memory_count_limit = False
reportgz = False
osv_memory_age_limit = 1.0
debug_mode = False

netrpc = False
netrpc_interface =
netrpc_port = 8070

limit_time_real = 120
limit_memory_hard = 805306368
csv_internal_sep = ,
limit_time_cpu = 60
pg_path = None
limit_memory_soft = 671088640
translate_modules = ['all']
server_wide_modules = None

smtp_user = False
smtp_ssl = False
smtp_password = False
smtp_port = 25
smtp_server = localhost
email_from = False

logfile = /var/log/openerp/openerp-server.log
log_handler = [':INFO']

db_user = openerp
db_host = False
db_port = False
db_name = False
db_maxconn = 64
db_template = template1
db_password = False

test_enable = False
max_cron_threads = 2
addons_path = /usr/lib/python2.6/site-packages/openerp-7.0_20130506_231027-py2.6.egg/openerp/addons
secure_cert_file = server.cert
Avatar
Discard

Have you made any further progress?

Author

Hi, yes, I have been search on the internet for long time and found the Nginx can be run front of the openerp, do few configuration and point the domain name to :8069 internally, then put the domian on the conf file, it works, but found new problem now.

Best Answer

Where did you make the change? In the configuration file?

Traceback (most recent call last): 
  File "/usr/lib64/python2.6/threading.py",
     line 532, in __bootstrap_inner self.run() 
  File "/usr/lib64/python2.6/threading.py",
     line 484, in run self.__target(self.__args, *self.__kwargs) 
  File "/usr/lib/python2.6/site-packages/openerp-7.0_20130506_231027-py2.6.egg/o penerp/service/wsgi_server.py",
     line 436, in serve httpd = werkzeug.serving.make_server(interface, port, application, threaded= True) 
  File "/usr/lib/python2.6/site-packages/werkzeug/serving.py",
     line 402, in make _server passthrough_errors, ssl_context) 
  File "/usr/lib/python2.6/site-packages/werkzeug/serving.py",
     line 334, in __in it__ HTTPServer.__init__(self, (host, int(port)), handler) 
  File "/usr/lib64/python2.6/SocketServer.py",
     line 402, in __init__ self.server_bind() 
  File "/usr/lib64/python2.6/BaseHTTPServer.py",
     line 108, in server_bind SocketServer.TCPServer.server_bind(self) 
  File "/usr/lib64/python2.6/SocketServer.py",
     line 413, in server_bind self.socket.bind(self.server_address) 
  File "<string>",
     line 1, in bind error: [Errno 13] Permission denied

The recommended technique for using port 80 is, in fact, to place OpenERP behind an HTTP/HTTPS server like NGinx or Apache. Ideally, you should use HTTPS and port 443, for production use.

Some articles about it (I have not yet done this myself):

  1. http://vinayrks.com/2012/12/05/configuring-openerp-with-nginx-server-and-ssl-certificate/
  2. http://www.schenkels.nl/2013/01/reverse-ssl-proxy-using-nginx-with-openerp-v7/
  3. http://blog.thamini.com/xat/howto-add-some-additional-security-your-openerp-web-client-ssl-using-nginx

Also, you may be pleased to know about ...

I have had excellent results with the Certificate Authority called StartSSL https://www.startssl.com/, which is, to my knowledge, the only CA offering Class #1 certificates, recognized by all browsers, free of charge!

Avatar
Discard

Martin, offtopic: how to get the nice colouring of your code?

indent each line with 4 spaces.

Best Answer

Hi,

Please we can run odoo on port 80 with the help of Nginx reverse proxy server. Please refer the below links. Hope this will help you.

http://www.technaureus.com/how-to-run-odoo-on-port-80/

http://www.technaureus.com/how-to-setup-nginx-for-odoo/

Avatar
Discard
Author Best Answer

Hi, I have changed the /etc/openerp-server.conf

The OS is CENTOS6.3

the conf file is :

[options]

without_demo = False

unaccent = False

db_template = template1

db_password = False

xmlrpcs = True

xmlrpcs_interface =

syslog = False

logrotate = True

xmlrpcs_port = 8071

test_report_directory = False

list_db = True

timezone = False

xmlrpc_interface =

test_file = False

smtp_password = False

secure_pkey_file = server.pkey

xmlrpc_port = 80

workers = 0

log_level = info

xmlrpc = True

admin_passwd = BLANKOUT

smtp_port = 25

smtp_server = localhost

static_http_url_prefix = None

limit_request = 8192

test_commit = False

proxy_mode = False

demo = {}

dbfilter = .*

login_message = False

import_partial =

pidfile = /var/run/openerp/openerp-server.pid

db_maxconn = 64

osv_memory_count_limit = False

reportgz = False

osv_memory_age_limit = 1.0

netrpc_port = 8070

db_port = False

db_name = False

debug_mode = False

netrpc = False

limit_time_real = 120

limit_memory_hard = 805306368

logfile = /var/log/openerp/openerp-server.log

csv_internal_sep = ,

limit_time_cpu = 60

pg_path = None

limit_memory_soft = 671088640

static_http_enable = False

translate_modules = ['all']

smtp_ssl = False

server_wide_modules = None

netrpc_interface =

smtp_user = False

log_handler = [':INFO']

db_user = openerp

db_host = False

test_enable = False

max_cron_threads = 2

static_http_document_root = None

email_from = False

addons_path = /usr/lib/python2.6/site-packages/openerp-7.0_20130506_231027-py2.6.egg/openerp/addons secure_cert_file = server.cert

Did I miss something? how about if I use http 80 port?

Kind Regards

Avatar
Discard

Please delete this answer and update your original question, with human readable formatting on the error log and the configuration file (begin each line with 4 spaces). It is against forum rules to use the answer area to discuss the original question.

Author

Hi, I have changed it, can you help with the issue? actually it's unread but it was copy past from original file, after put enter on each line it looks fine now.

Author

Hi Martin do you know how to set up, with ngnix? as I can send up LNMP, but after that I have no clue how to point the web url to actual openERP server?

I have edited my original answer.

Best Answer

Looks like an issue with a webserver running in your server. Check with the sysadmin if apache2 or nginx is running in the server. You can try changing the port to a different port to see if you get the same error.

But changing the port to 80 does not help you, you need to change your webserver configuration in order to listen to the 80 port

Avatar
Discard
Best Answer

The previous answers are helpful, but do not explain the problem. It is recommended that the openerp server not be run as root, and so it cannot listen at a privileged port ( less than 1024). This is discussed, with solutions, at:

stackoverflow.com/questions/413807/is-there-a-way-for-non-root-processes-to-bind-to-privileged-ports-1024-on-l

Avatar
Discard