Archive for the ‘Servidores y aplicaciones web’ Category

h1

Cómo ver las opciones de superusuario de Eventum (smtp, etc)

20/07/2008

En algunos casos con el usuario que manejamos perdemos la categoría de superusuario, y por tanto no se muestran esas opciones de configuración. Basta con conectarse a la base de datos, localizar el ID correspondiente al usuario y alterar sus categoría.

Conectar a MySQL:
pilar002:/var/www/eventum/config# mysql --user=usuarioEventum --password=clavesecreta nombre_de_la_BD
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 235
Server version: 5.0.32-Debian_7etch6-log Debian etch distribution
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

Obtener el ID (en este caso es «3») del usuario al que queremos promocionar:


mysql> SELECT usr_id FROM eventum_user WHERE usr_email='email@delAdministrador.com';
+--------+
| usr_id |
+--------+
| 3 |
+--------+
1 row in set (0.00 sec)

Promocionar al usuario con id=3:

mysql> UPDATE `eventum_project_user` SET `pru_role` = '7' WHERE `pru_usr_id` = '3'  ;
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

En realidad todo se resume en cambiar el tipo de permiso de todas las ocurrencias del usuario a promocionar en la tabla eventum_project_user poniéndolas a 7

h1

Apache: error «Invalid command RewriteEngine» y redirección HTTP a HTTPS

20/07/2008

Revisión (octubre de 2026): el error Invalid command 'RewriteEngine' suele indicar que Apache no reconoce esa directiva en el contexto utilizado, por ejemplo porque el módulo correspondiente no está cargado. Verifica los módulos activos y la ubicación de las reglas antes de reiniciar.

Las directivas RewriteLog y RewriteLogLevel del ejemplo son históricas y no se utilizan de la misma forma en Apache 2.4. Para redireccionar HTTP a HTTPS, revisa el virtual host, certificados, proxies y posibles bucles; prueba la configuración con apache2ctl configtest antes de recargarla. No presupongas que una regla antigua sirve para todos los sitios.

Relacionado: activar mod_rewrite y recargar Apache.


Si tras configurar un sitio con una redirección, por ejemplo uno que redireccione todo el tráfico http a https:

pilar002:/etc/apache2/sites-available# cat redir
NameVirtualHost *:80
RewriteEngine on
RewriteLog /var/log/apache2/https_rewrite.log
RewriteLogLevel 1
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^/(.*) https://%{SERVER_NAME}/$1 [L,R]

Fuente: http://crysol.inf-cr.uclm.es/node/198

Se produce el siguiente error:

pilar002:/etc/apache2/sites-available# /etc/init.d/apache2 restart
Forcing reload of web server (apache2)...Syntax error on line 3 of /etc/apache2/sites-enabled/redir:
Invalid command 'RewriteEngine', perhaps misspelled or defined by a module not included in the server configuration
failed!

La solución es tan sencilla como cargar el módulo de rewrite:
pilar002:/etc/apache2/mods-available# a2enmod rewrite
Module rewrite installed; run /etc/init.d/apache2 force-reload to enable.

h1

Generación de claves para SSL en Apache2 SIN «apache2-ssl-certificate»

20/07/2008

Update: Gracias a Boriel, se puede utilizar estas instrucciones más sencillas:
$ mkdir /etc/apache2/ssl
$ make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/server.pem

 

El script apache2-ssl-certificate ya no se incluye en el paquete de Apache2 de Debian, por lo que la habitual instrucción:

  • # apache2-ssl-certificate —force -days 365 -set_serial 2
    ó si ocurre:
    # apache2-ssl-certificate: command not found

    viene a ser sustituida por:

    # openssl genrsa -des3 -out server.key 1024
    # openssl rsa -in server.key -out server.pem
    # openssl req -new -key server.key -out server.csr
    # openssl x509 -req -days 360 -in server.csr -signkey server.key -out server.crt


    Opcional: para que no se pida la clave cada vez que se arranca el servidor:

    # mv key.pem key.pem.SEGURA #openssl rsa -in key.pem.SEGURA -out key.pem
h1

Cómo recargar Apache sin cortar las conexiones con graceful

07/05/2008

Actualización (2026): el mecanismo graceful permite a Apache realizar una recarga gradual, pero no garantiza ausencia absoluta de interrupciones en toda configuración o despliegue. Comprueba la configuración antes de la recarga, por ejemplo con apachectl configtest, y utiliza las rutas y el servicio de tu instalación, no necesariamente las del ejemplo de 2008.

Relacionado: administración de servidores y aplicaciones web.


En ocasiones, sobre todo en entornos de producción, es necesario reiniciar Apache sin pérdida de servicio (en caliente) para utilizar una configuración distinta (httpd.conf), de modo que siga atendiendo peticiones constantemente y los usuarios no lo noten.

Para ello se puede utilizar la opción «graceful».

$ /usr/local/apache2/bin/apachectl -f /export/home/usuario/apache/conf/httpd_NUEVA.conf -k graceful

De este modo Apache toma como configuración «httpd_NUEVA.conf» como nueva configuración para las posteriores peticiones, mientras que para los presentes forks se continuará utilizando la antigua. De este modo se puede reiniciar Apache sin pérdida de servicio. Además, la opción graceful chequea la validez del nuevo fichero httpd.conf, de modo que si no es aceptable las peticiones se seguirán atendiendo con la config antigua, aumentando la calidad y fiabilidad del servicio.

Además, previamente se puede chequear la validez del archivo mediante «apachectl configtest»

Otros artículos relacionados: Revisar la configuración PHP de Joomla

h1

Error PHPBB2: «Tried to upload empty file» o «No post mode specified»

17/06/2007

Utilizando el mod AttachMOD para poder adjuntar ficheros en foros phpbb2 puede producirse uno de los siguientes errores al subir un archivo:

– «Tried to upload empty file»
– «No post mode specified»

Existen dos soluciones:

a) Crear un fichero .htaccess con el siguiente contenido:
php_value upload_max_filesize 128M
php_value post_max_size 128M

b) Editar el fichero php.ini (/etc/php4/apache/php.ini) modificando las variables correspondientes para que admitan ficheros mayores:

upload_max_filesize = 25M
post_max_size = 25M

Por último, reiniciar Apache (/etc/init.d/apache restart)

(Fuente)

h1

Ejecutar un .php descarga un archivo: error de configuración Apache/PHP

13/06/2007

Cuando se quiere ejecutar un php en un servidor Apache y no produce lo esperado, si no que inicia la descarga de un fichero, es necesario realizar lo siguiente:

1.- Comrporbar que está instalado PHP y libapache-mod-php4.

2.- Comprobar que existe la línea

LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
en /etc/apache/modules.conf

3.- Comrpobar que en el módulo «dir» está incluido el tipo «index.php»
root@srvws01:/etc/apache2/mods-enabled# nano dir.conf
(...)
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm index.php
(...)

activar el módulo si no lo está y reiniciar Apache.
root@srvws01:/etc/apache2/mods-enabled# a2enmod dir
Module dir already enabled
root@srvws01:/etc/apache2/mods-enabled# /etc/init.d/apache2 restart
* Restarting web server htcacheclean apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
... waiting apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

Lógicamente dependiendo de las versiones de Apache y PHP muchos datos podrán variar.

h1

instalación de Solunas en Ubuntu

27/03/2007

Para instalar el gestor de reservas Solunas en Ubuntu hay que seguir la siguiente guía. No obstante, al no estar muy detallada, la instalación del entorno de ejecución Ruby se compone de los siguientes paquetes:

#apt-get install ruby libmysql-ruby1.8 rails

(rails no estoy seguro de su necesidd).

es necesario también descargar las Ruby gems e instalarlas. Una vez hecho, hay que hacer un «gem install ????» (???? es una parte que ahora mismo no tengo a mano, intentaré actualizar y completar el post) que pedirá el gestor cuando intentaes arrancarlo (/var/www/solunas#ruby script/server).

h1

Caracteres extraños en la instalación de Joomla

20/03/2007

Si no se ven correctamente los acentos (tildes) o la letra «ñ» en la instalación de Joomla, es recomendable descomentar o añadir la línea:

AddDefaultCharset ISO-8859-1

de /etc/apache2/apache2.conf

h1

Caracteres extraños en Jomres (Joomla)

11/03/2007

Para cambiar la codificación y que aparezcan los caracteres correctos en este gestor de reservas online hoteleras GPL para Joomla (operación en vez de operación por ejemplo) , es necesario editar el fichero language/spanish.php (o el idioma que corresponda en cada caso y reemplazar:

DEFINE(‘_ISO’,’charset=iso-8859-1′);

por

DEFINE(‘_ISO’,’charset=utf-8′);

(fuente: FAQ de Jomres ;))

h1

PHP: solucionar «Allowed memory size exhausted» y revisar memory_limit

12/02/2007

Revisión (octubre de 2026): el error indica que PHP agotó la memoria permitida para esa ejecución. Antes de aumentar memory_limit, identifica la operación causante y revisa posibles bucles, lecturas completas de archivos o consultas que cargan demasiados registros. El php.ini del ejemplo pertenece a PHP 5 y no tiene por qué coincidir con la ubicación de tu instalación actual.

Comprueba el valor efectivo de memory_limit para el entorno donde corre la aplicación; PHP-CLI y PHP-FPM pueden cargar configuraciones distintas. Ajustar el límite sin investigar el consumo solo aplaza el problema.

Relacionado: error de extensión cURL en PHP.


Si al programar alguna aplicación php sale ese error, el problema está en que se está intentando reservar (en conjunto) más memoria de la permitida. Se soluciona corrigiendo tu ćodigo (optimizándolo para que no consuma tanta memoria) o cambiando en el fichero
/etc/php5/apache2/php.ini
la variable
memory_limit = 8M por 12M o los que consideres.
Si no tienes acceso a ese fichero (pues utilizas un hosting ajeno) contacta con el administrador.