Manual de usuario de calibre, Publicación 2.73.0
Usar un proxy inverso
Un proxy inverso es cuando el servidor principal acepta peticiones entrantes y las traslada al servidor de calibre. A continuación, lee la respuesta desde el servidor de calibre y la envía al cliente. Esto significa que sólo tiene que ejecutar el servidor de calibre de forma normal sin tratar de integrarlo estrechamente con el servidor principal y aprovechar cualquier sistema de autenticación que posea el servidor principal. Éste es el método más sencillo, ya que le permite usar la instalación de binaria de calibre sin dependencias externas o requisitos de integración en el sistema. A continuación se muestra un ejemplo de cómo lograr esto con Apache como servidor principal, pero funcionará con cualquier servidor compatible con servidores proxy inversos.
Primero active el servidor de contenidos de calibre como se muestra a continuación: calibre-server--url-prefix / calibre--port 8080
El parámetro clave aquí es--url-prefix / calibre. Esto hace que el servidor de contenidos sirva todos los URL con el prefijo calibre. Para verlo en acción, visite http:// localhost: 8080 / calibre en su navegador. Debería ver la página web habitual del servidor de contenido, pero ahora se ejecutará desde / calibre.
Supongamos ahora que Apache es el servidor principal. En primer lugar, habilite los módulos de proxy en Apache, añadiendo lo siguiente a httpd. conf:
LoadModule proxy _ module modules / mod _ proxy. so LoadModule proxy _ http _ module modules / mod _ proxy _ http. so
La técnica exacta para habilitar los módulos proxy variará según la instalación de Apache. Una vez que tenga los módulos proxy habilitados, agregue las siguientes reglas a httpd. conf( o, si está usando servidores virtuales, al archivo conf del servidor virtual en cuestión):
RewriteEngine on RewriteRule ^ / calibre /(.*) http:// localhost: 8080 / calibre /$ 1 [ proxy ] RewriteRule ^ / calibre http:// localhost: 8080 [ proxy ] SetEnv force-proxy-request-1.0 1 SetEnv proxy-nokeepalive 1
Eso es todo, ahora podrá acceder al servidor de contenidos de calibre bajo el URL / calibre en su servidor Apache. Las reglas anteriores pasan todas las peticiones bajo / calibre al servidor de calibre que se ejecuta en el puerto 8080 y gracias a la opción--url-prefix mencionada anteriormente, el servidor de calibre las gestiona de forma transparente.
Nota: Si está dispuesto a dedicar todo un VirtualHost para el servidor de contenidos, entonces no hay necesidad de utilizar--url-prefix y RewriteRule, simplemente use la directiva ProxyPass.
Nota: El motor del servidor que usa calibre, CherryPy, puede tener problemas cuando se utilizan proxys y peticiones KeepAlive, así que desactívelos en Apache, con las directivas SetEnv que se muestran arriba.
En proceso
El servidor de contenidos de calibre se puede ejecutar directamente, en proceso, dentro de un servidor anfitrión como Apache utilizando el marco WSGI.
Nota: Para que esto funcione, todas las dependencias requeridas por calibre deben estar instaladas en el sistema. Conseguir esto no es en absoluto trivial, y se aconseja no usar servidores en proceso. No se proporcionará ninguna
184 Capítulo 1. Secciones