anotaciones que no quiero recordar, ni olvidar

me

Blog Técnico

Problemas que puede encontrar durante una migracion

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Joomla Warning: Parameter 2 to frontpage()
Para sustituir simplemente los ficheros /includes/Cache/Lite/Function.php y /includes/vcard.class.php tenéis que acceder a la url:
 http://bitbrain.se/fix_joomla_10x_php_530.zip
Si la modificación la realizan de forma manual tienen que realizar lo siguiente:
En el fichero vcard.class.php hay que añadir la siguiente línea de código:
    if (! function_exists ('quoted_printable_encode')){
    // aquí hay la function quoted_printable_encode()
    }
En function.php he añadido esta línea dos veces:
    $arguments = $ this-> fixCalls ($arguments);
Puedes ver en el fichero donde ponerla.

La nueva función (fixCalls) se añade al final del archivo.


static $newobjCount,$newobj;
    function fixCalls($arguments) {
        for ($i = 0, $j = count($arguments); $i < $j; $i++) {
            if (is_object($arguments[$i])) {
                if (!self::$newobjCount) self::$newobjCount = 0;
                self::$newobj[++self::$newobjCount] = clone $arguments[$i];
                $arguments[$i] = &self::$newobj[self::$newobjCount];
            }
        }  
        return $arguments;     
    }

 

Assigning the return value of new by reference is deprecated
Quitar el “&” de todas las formulas como en el ejemplo siguiente:
$obj_md = new MDB2(); y no $obj_md =& new MDB2();

 

PHP warning: Call-time pass-by-reference has been deprecated
Eliminar & de todos &$this

 

Migrando ereg():
ereg('\.([^\.]*$)', $this->filename, $extension);
reemplazarla por:
preg_match('/\.([^\.]*$)/', $this->filename, $extension);
Nótele que he encerrado el patrón de coincidencia \.([^\.]*$) entre / / (slashes), mismos que son delimitadores de patrón. Si el patrón contuviera slashes (una URL por ejemplo) entonces quizás quieras usar el delimitador # (sharp) en lugar del slash o el delimitador | (barra).


Migrando eregi():
Siguiendo la lógica seguramente buscaríamos la función pregi_match(), que debería ser la versión no sensible a mayúsculas/minúsculas de preg_match(). Sin embargo no existe nada parecido, pues en su lugar se trabaja con los modificadores de expresión regular. Básicamente para volver a preg_match insensible a mayúsculas/minúsculas deberemos anexar la i luego del delimitador de patrón. Entonces, para cambiar:
eregi('\.([^\.]*$)', $this->filename, $extension);
reemplazarla por:
preg_match('/\.([^\.]*$)/i', $this->filename, $extension);
If you are interpolating variables inside your regex, be sure to pass the delimiter you chose as the second argument to preg_quote().


Migrando ereg_replace():
$this->filename = ereg_replace('[^A-Za-z0-9_]', '', $this->filename);
Reemplazarla por:
$this->filename = preg_replace('/[^A-Za-z0-9_]/', '', $this->filename);
Nuevamente, sólo agregué los slashes como delimitadores al patrón.


Migrando eregi_replace():
Nuevamente aplicamos la i como modificador de expresión regular, al igual que en el caso de eregi() explicado anteriormente:
$this->filename = eregi_replace('[^A-Za-z0-9_]', '', $this->filename);
Reemplazarla por:
$this->filename = preg_replace('/[^A-Za-z0-9_]/i', '', $this->filename);
Con lo cual se han cubierto los cambios necesarios en las Funciones de Expresiones Regulares POSIX de uso más frecuente. La filosofía se mantiene intacta para el resto de funciones no detalladas aquí pero que pertenecen a la misma librería como split() y spliti().

 

Deprecated: Function split() is deprecated
Cambiar “split()” con “explode()”

 

Joomla u otros cms que no permiten login o acceder al administrador

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Algunos CMS antiguos como versiones de Joomla, presentan errores a la hora de hacer login en la zona publica, o entrar en el administrador, e incluso al añadir productos a la cesta si es el caso.
Esto suele ser porque intenta crear las sesiones en el /tmp del servidor y esto está capado por seguridad. Puedes cambiarlo poniendo esta directiva en tu .htacces o en ISPconfig, en tu sitio web, en Opciones, y Directivas de Apache:

php_value session.save_path /var/www/DOMINIO.com/web/CARPETAdeLASsesiones/

Como crear un subdominio

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

1 - Crear SUBDOMINIO
   - Seguimos en la pestaña “Sitios”. En el panel de la izquierda buscamos “Sitios web” y seleccionamos la opción “Subdominio”. Una vez seleccionada ésta opción, pulsamos sobre “Añadir nuevo subdominio”. Nos aparecerá la siguiente ventana:

subdominio1

   - Ponemos el alojamiento
   - Elegimos el dominio de nuestro sitio.
   - El resto puede quedar como así. Pues podemos darle a “Guardar”.

2 - Añadir un registro de zona DNS
   - Seguimos en la pestaña “DNS” , buscamos la zona que nos interesa y abrámosla.
   - Seleccionamos la pestaña “Registros”.
 Nos aparecerá la siguiente ventana:

subdominio2

 

   - Vamos a añadir un registro de tipo A, hacemos un clic en el “+ A”. Nos aparece este formulario:

subdominio3

   - Ponemos el nombre de la máquina.
   - Apuntamos la dirección IP.
   - Pues podemos darle a “Guardar”.

Limpiar Wordpress de exploits y otros bichos...

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Que para mucha gente WordPress es maravilloso, es tan cierto, como que mucha gente busca en foros y lugares "alternativos" los plugins y templates que son de pago.

Sin pensar que estas pueden contener exploits, e incluso no estar actualizados para permitir la entrada mediante fallos de seguridad.

Con el fin de comprometer menos la seguridad de un sitio web, y aunque lo recomendable es tener maldet a nivel de servidor, existen algunso plugins dentro del propio WordPress:

Exploid Scanner: https://wordpress.org/plugins/exploit-scanner/

TAC Theme Authenticity Checker: https://wordpress.org/plugins/tac/ (ojo que no lo actualizand desde hace más de 1 año, pero es sus tiempos era bueno y aun lo será dependiendo de que año sea tu theme)

Como crear un sitio web en ISPConfig, incluido correo, base de datos y ftp

Ratio: 0 / 5

Inicio inactivoInicio inactivoInicio inactivoInicio inactivoInicio inactivo

Empezamos por las pestañas del panel...

 

pestanas

 

Lo de crear CLIENTES es para darles acceso a configurar sus dominios, si no vas a darles acceso a ellos puedes continuar al paso 1.
Si vas a darles acceso, sí, crea primero el cliente y ponle una contraseña.
Luego en los siguientes pasos selecciónalo cuando se te permita.

1 - Crear DNS con Asistente:
    - Dentro de la zona DNS, seleccionamos la opción de “Añadir nueva zona DNS con Asistente”
    - Una vez dentro, tendremos lo siguiente:

dns-asistente

 

  - Pones el dominio, la IP, el NS1 y NS2, el correo. Los NS dependen del servidor, tiene que ser los tuyos propios. Un ejemplo:
    thor.grupodin.net
    thor2.grupodin.net


2 - Crear SITIO web (deberás indicar la IP)
    - Seleccionamos la pestaña “Sitios”, vamos a la opción de “Añadir nuevo sitio web”.
    - Una vez dentro, tendremos lo siguiente:

sitio-web-form

 

-Sólo trabajaremos con la pestaña “Dominio”.
    - Aquí deberemos poner la IP (campo IPv4-Address).
    - Indicar el dominio del sitio web.
    - Y ya si tenemos información, rellenar los campos “Cuota de disco duro y de tráfico”.
    - Las demás opciones se dejan así.


3 - Crear FTP
    - Seguimos en la pestaña “Sitios”. En el panel de la izquierda buscamos “Web Acces” y seleccionamos la primera opción “Usuario FTP”. Una vez seleccionada ésta opción, pulsamos sobre “Añadir nuevo usuario FTP”. Nos aparecerá la siguiente ventana:

ftp

 

    -Seleccionamos el “Sitio web” el cual vamos a crear el usuario ftp.
    -Rellenamos el campo “Usuario” y “Contraseña” y ya podemos darle a “Guardar”.

4 - Crear DATABASE USER
    - Seguimos en la pestaña “Sitios”. En el panel de la izquierda buscamos “Base de datos” y seleccionamos la opción “Database Users”. Nos aparecerá el botón “Add new  user”, pulsamos.
    - Sólo tendremos que seleccionar el 'cliente' junto al nombre del usuario de la base de datos y su contraseña de acceso.

db-user

 

5 - Crear BASE DE DATOS
  - Seguimos en la pestaña “Sitios”. En el panel de la izquierda buscamos “Base de datos” y seleccionamos la primera opción “Base de datos”. Nos aparecerá el botón “Añadir nueva base de datos”, pulsamos.
  - Seleccionamos el “Site” la cual alojaremos nuestra base de datos. Después le damos un nombre a la base de datos y seleccionamos el “Usuario BD” anteriormente creado en el paso 4. Los demás campos se pueden dejar tal como están.

bd

Y poco más...
Salvo el primer caso y el segundo, a los demás les asocias el SITIO WEB seleccionándolo del desplegable.
Lo de CLIENTE lo puedes dejar en blanco si no procede.

6 - Crear DOMINIO PARA RECIBIR CORREO
   - Seleccionamos la pestaña “Correo”, vamos a la opción de “Añadir nuevo dominio”.
   - Una vez dentro, tendremos lo siguiente:

Dominio correo

 

 

   - Pones el nombre del dominio, que parece, por ejemplo, a “dominio.com”.
   - Seleccionamos en filtro de spam “Normal”, como lo puedes ver en la imagen.
   - Pues podemos darle a “Guardar”.

7 - Crear BUZÓN DE CORREO
   - Seguimos en la pestaña “Correo”. En el panel de la izquierda buscamos “Cuentas de correo” y seleccionamos la opción “Buzón de correo”. Nos aparecerá el botón “Añadir nuevo buzón”, pulsamos.Y esto nos aparece:

 Buzon correo

 

   - Ponemos el nombre real de la dirección de correo, entramos el alias del correo y elegimos el dominio que habíamos creado en la ultima parte.
   - Podemos poner una contraseña o generarla. No olvides de repetir la contraseña.
   - Indicar la cuota en MB, parece suficiente, y elegir “Normal” como filtro de spam.
   - El resto puede quedar como así, depende de lo que quieres.