Diferencia entre revisiones de «Template SENATICs»

De wiki.mitic.gov.py
Ir a la navegación Ir a la búsqueda
Aortiz (discusión | contribs.)
Dzaracho (discusión | contribs.)
 
(No se muestran 2 ediciones intermedias de otro usuario)
Línea 222: Línea 222:
Para ello debe tener instalado git y luego ejecutar el siguiente comando:
Para ello debe tener instalado git y luego ejecutar el siguiente comando:


  git clone https://github.com/SENATICS/template-concrete5
  git clone https://gitlab.mitic.gov.py/senatics/template-web-gob-concrete5.git


2- '''Movemos el contenido descargado a la carpeta publica del motor de php:'''
2- '''Movemos el contenido descargado a la carpeta publica del motor de php:'''
Línea 262: Línea 262:
</source>
</source>
    
    
5- '''Reiniciar el motor de php'''


<source lang="bash">service httpd restart
5- '''Configuración de Accesos'''
</source>
 
6- '''Configuración de Accesos'''


Se debe asegurarse que los directorios '''application/files/''', '''application/config/''', '''packages/''' y '''updates/''' tengan permisos de escritura por parte del proceso del servidor web.
Se debe asegurarse que los directorios '''application/files/''', '''application/config/''', '''packages/''' y '''updates/''' tengan permisos de escritura por parte del proceso del servidor web.
Línea 277: Línea 273:


chmod -R 755 updates/ packages/ application/files/ application/config/
chmod -R 755 updates/ packages/ application/files/ application/config/
</source>
6- '''Reiniciar el motor de php'''
'''Para Centos 6.5'''
<source lang="bash">service httpd restart
</source>
'''Para Centos 7'''
<source lang="bash">systemctl restart httpd.service
</source>
</source>

Revisión actual - 12:15 29 nov 2019

Sistema de gestión de contenidos escrito en PHP que se destaca por ser ligero, fácil de usar y amigable con el usuario. Fue diseñado para que lo puedan usar usuarios con poca experiencia técnica y cuenta con funcionalidades como la de un editor in-context de contenido, control de versiones y hasta un editor de imágenes incorporado.


Instalación

Para poder instalar Concrete5 es necesario contar con un servidor web instalado en este caso expondremos la instalación para Centos 6.5 o Centos 7.

Requerimientos del Hardware

Espacio en Disco Duro: 20 GB o superior

Memoria RAM: 1 GB o superior

Requerimientos del Software

PHP 5.3.3. o mayór

Los siguientes módulos de PHP:

MySQL (con extensiones PDO)

DOM

SimpleXML

Libreria GD con Freetype

CURL

mcrypt

PHP Safe Mode Off

Límite de memoria de PHP al menos 64 MB (más podrían ser necesarias para la elaboración y manipulación de grandes archivos de imágenes.) MySQL 5.1.5 o superior

Soporte MySQL InnoDB table

Concrete5 se ejecuta principalmente en Apache2, pero también puede trabajar en IIS y Nginx.

Instalación de Apache2

Para instalar Apache, hay que abrir la terminal e ingresar:

sudo yum install httpd mod_ssl

Una vez instalado, se puede iniciar el mismo haciendo:

Para centos 6.5:

sudo service httpd start

Para centos 7:

sudo systemctl start httpd.service

Para comprobar que la instalación fue exitosa basta con ingresar desde un navegador web a la dirección IP del servidor (ej.: http://192.168.2.14)  Se debería devolver una página como ésta.

Es recomendable agregar al httpd entre los servicios de inicio automático del servidor, para ello ejecutamos:

Para centos 6.5:

chkconfig httpd on

Para centos 7:

systemctl enable httpd.service

Instalación de MySQL

Para Centos 6.5

Para instalar la base de datos MySQL, hay que abrir la terminal e ingresar:

sudo yum install mysql-server

sudo service mysqld start

Durante la instalación, MySQL va a pedir dos veces por autorización. Después de confirmar ambas veces, MySQL se instalará.

Una vez instalado, se puede establecer una contraseña para el usuario root del MySQL:

sudo /usr/bin/mysql_secure_installation

Se va a pedir la contraseña root actual, como se acaba de instalar MySQL, no habrá ni una contraseña establecida actualmente. Se deja en blanco y se presiona Enter:

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Luego, se va a preguntar si se desea añadir una nueva contraseña, se presiona Y y se siguen las instrucciones

CentOS automatiza el proceso de instalar MySQL, haciendo una serie de preguntas de sí o no.

Al final MySQL se va a recargar e implementar los nuevos cambios.

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y                                           
... Success!

Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y
... Success!

By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.

Thanks for using MySQL!

Es recomendable agregar al mysql entre los servicios de inicio automático del servidor, para ello ejecutamos:

chkconfig mysql on

Para Centos 7

MariaDB es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL, para el centos 7 usaremos MariaDB.

Para instalar la base de datos MariaDB 5.5, hay que abrir la terminal e ingresar:

yum install mariadb-server mariadb

systemctl start mariadb.service #<-- Start mariadb server
systemctl enable mariadb.service
systemctl stop mariadb.service #<-- Stop mariadb server
systemctl restart mariadb.service #<-- Restart mariadb server
systemctl disable mariadb.service #<-- Disable mariadb server
systemctl is-active mariadb.service   #<-- Is mariadb server running?

Resetear la Contraseña del usuario ROOT del MariaDB

Seguir los siguientes pasos [1]

Es recomendable agregar al mysql entre los servicios de inicio automático del servidor, para ello ejecutamos:

systemctl enable mysql.service

Crear Usuarios y Base de Datos

Ejemplo de cómo asignar los permisos:

CREATE DATABASE nombre_base_de_datos;

CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'demopassword';

SELECT User, Host, Password FROM mysql.user;

GRANT ALL PRIVILEGES ON nombre_base_de_datos.* to nombre_usuario@localhost;

FLUSH PRIVILEGES;

SHOW GRANTS FOR 'nombre_usuario'@'localhost';

Desactivar SELinux

Muy importante es verificar el estado del SELinux, en vista que por defecto viene activo, y no dejará cargar correctamente el sitio. Para verificar el estado utilizar el siguiente comando:

/usr/sbin/getenforce
Enforcing

Para deshabilitar el SELinux, se debe acceder al /etc/selinux/config y cambiar la variable SELINUX a disabled

nano /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#       targeted - Targeted processes are protected,
#       mls - Multi Level Security protection.
SELINUXTYPE=targeted

Instalación de PHP

Para instalar las librerias del PHP hay que abrir la terminal e ingresar:

sudo yum install php-mysql php-devel php-gd php-pecl-memcache php-pspell php-snmp php-xmlrpc php-xml

Una vez hecho esto, reiniciar Apache:

Para Centos 6.5

sudo /usr/sbin/apachectl restart

Para Centos 7

sudo systemctl restart httpd.service

Apache debería reconocer la nueva instalación de PHP de forma automática.

Instalar Concrete5

Una vez que ya se cuenten con los requisitos previos se puede proceder a la instalación de Concrete5:

Seguir los siguiente pasos:

1- Descargar el Template del siguiente repositorio (link).

Para ello debe tener instalado git y luego ejecutar el siguiente comando:

git clone https://gitlab.mitic.gov.py/senatics/template-web-gob-concrete5.git

2- Movemos el contenido descargado a la carpeta publica del motor de php:

mv -R [ubicación de descarga]/template-concrete5/ /var/www/html/

3- Restauramos el backup de la Base de Datos

En la carpeta DB/ se encuentra el backup de la base de datos, para restaurar el backup hay que ejecutar la siguiente linea en la terminal:

mysql --user=NOMBRE_DE_USUARIO --password=CONTRASEÑA NOMBRE_BASE_DE_DATOS < copia_seguridad.sql

4- Editar el archivo /template-concrete5/application/config/database.php

cd /var/www/html/template-concrete5
nano application/config/database.php

Desplegara el siguiente contenido y reemplazamos los valores de server, database, username y password, por sus valores correctos:

   
 <?php                                                    
 
   return array(
      'default-connection' => 'concrete',
      'connections' => array(
      'concrete' => array(
      'driver' => 'c5_pdo_mysql',
             'server' => 'host_server', 
             'database' => 'nombre_de_la_base_de_datos',
             'username' => 'usuario_db',
             'password' => 'contraseña_db' ,
             'charset' => 'utf8',
             'driverOptions' => array(1002=>'SET NAMES utf8')
          )
       )
    );
 ?>


5- Configuración de Accesos

Se debe asegurarse que los directorios application/files/, application/config/, packages/ y updates/ tengan permisos de escritura por parte del proceso del servidor web.

cd /var/www/html

chown -R apache:apache template-concrete5

cd template-concrete5

chmod -R 755 updates/ packages/ application/files/ application/config/


6- Reiniciar el motor de php


Para Centos 6.5

service httpd restart


Para Centos 7

systemctl restart httpd.service