Nascondere accesso porta 8069
L'accesso al server OpenERP avviene tramite la porta 8069. In taluni si potrebbe voler nascondere questa informazione per ragioni di sicurezza o semplicemente perhè qualche firewall potrebbe bloccare l'accesso.
Esempio di accesso (sostituire www.server-openerp.it con l'URL corretto):
http://www.server-openerp.it:8069
Ci sono diversi modi per accedere al server OpenERP tramite una pagina web. I metodi sono:
- Ridirezione via HTML o Javascript
- Ridirezione via Apache
- Proxy
Vantaggi | Svantaggi | |
HTML o JavaScript | Si può applicare modificando la pagina HTML; non è necessario accedere al server. Utilizzabile con qualsiasi web server | Resta visibile l'accesso alla porta 8069. L'accesso non è possibile in caso di blocco da firewall |
Ridirezione via Apache | Accesso più rapido rispetto ad HTML | Richiede acceso al server; resta visibile l'accesso alla porta 8069. L'accesso non è possibile in caso di blocco da firewall |
Proxy | Nasconde porta 8069 per sicurezza; evita potenziali blocchi firewall su porte non ususali | Richiede accesso alla configurazione del server; richiede conoscenze tecniche dei web server |
Ridirezione via HTML o JavaScript
Occorre crere una pagina HTML con il codice di ridirezione. Questo è l'esempio (sostituire www.server-openerp.it con l'URL corretto):
<!DOCTYPE HTML> <head> <meta http-equiv="refresh" content="0; http://www.server-openerp.it:8069/"> <script type="text/javascript"> top.location.href = "http://www.server-openerp:8069/" </script> <title>Ridirezione</title> </head> <body> Tra poco sarete ridirezionato verso il <a href='http://www.server-openerp.it:8069/' Server OpenERP</a> </body> </html>
Redirect via Apache
Ha la stessa funzionalità del redirect via pagina HTML ma è eseguito direttamente dal server Apache. Evita che in alcuni casi venga visualizzata la pagina di ridirezionamento per qualce istante. Richiede l'accesso al server per modificare il file di configurazione del web server.
Questo è l'esempio (sostituire www.server-openerp.it con l'URL corretto):
<VirtualHost *:80> ServerName www.server-openerp.it Redirect permanent / localhost:8069 </VirtualHost>
Uso Proxy
Richiede l'accesso al server per modificare il file di configurazione del web server.
Questo è l'esempio (sostituire server-openerp.it con l'URL corretto):
<VirtualHost *:80> ServerName erp.server-openerp.it DocumentRoot ......... ProxyRequests Off ProxyPreserveHost On <Proxy *> Order deny,allow Allow from all </Proxy> ProxyVia On # ProxyPass / http://localhost:8069/ disablereuse=on timeout=600 keepalive=On # ProxyPassMatch ^(/)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On ProxyPassMatch ^(.)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On ProxyPassMatch ^(/auth_signup/.*)$ http://localhost:8069/ disablereuse=on timeout=60 keepalive=On ProxyPassMatch ^(/web[/_].*)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On ProxyPassMatch ^(/base[/_].*)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On ProxyPassMatch ^(/process/.*)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On ProxyPassMatch ^(/[\?\&\#].*)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On ProxyPassMatch ^(.*/static/.*/.*)$ http://localhost:8069/ disablereuse=on timeout=600 keepalive=On <location / > ProxyPassReverse / </location> ProxyPassReverse / http://localhost:8069/ # ProxyMaxForwards 10 </VirtualHost>
La direttiva ProxyMaxForwards
deve assumere un valore adeguato.
Notare che la direttiva ProxyPass
è sostituita d ProxyPassMatch
che evitare di inviare a OpenERP richieste esterne non valide e di conseguenza evita di registrare nel log tutte le richieste dei bot di esplorazione automatici. Le direttive effettuano la ridirezione soltanto delle richieste valide per OpenERP.
La lista dei percorsi include i percorsi per le ordinarie funzionalità del client (la root /
, i parametri ?&#
e web client /web
); a questo sono aggiunti i percorsi per l'import (modulo base /base
) e l'accesso con modalità sviluppatore (web esteso, base e process /process
).
Senza l'accesso web esteso (/web_*/<code> invece che <code>/web/
) non si attiva la modalità sviluppatore.
Senza l'accesso base esteso (/base_*/<code> invece che <code>/base/
) non si attiva la possibilità di import/export dati.
Maggiori riferimenti sono disponibili in API di OpenERP per la funzione di traduzione translate_path del modulo http_server.