Page 1
Standard

Solucionar error: W: GPG error: ….: The following signatures couldn’t be verified because the public key is not available:

Al querer agregar el repositorio de php me aparece el error:

W: GPG error: http://ppa.launchpad.net/ondrej/php/ubuntu disco InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 4F4EA0AAE5267A6

Nos muestra que la llave pública no está disponible.

Lo que debemos hacer es buscar esta clave pública en el sistema. Obtenerla del mismo mensaje de error, al final: NO_PUBKEY 4F4EA0AAE5267A6

y usarla con el siguiente comando:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4F4EA0AAE5267A6

Y Listo.

more
mssql-php
Standard

Instalar drivers de Microsoft PHP para SQL Server en Ubuntu 16.04

En este tutorial veremos cómo instalar PHP para SQL Server, en este ejemplo usaremos la versión 7.0, si se desea la versión 7.2 sólo es reemplazar, usaré Ubuntu 16.04 pero  puede funcionar con otras versiones.

sudo su 
add-apt-repository ppa:ondrej/php -y 
apt-get update 
apt-get install php7.0 php7.0-dev php7.0-xml -y --allow-unauthenticated

Prerequisitos:

sudo su 
curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add -

#Download appropriate package for the OS version
#Choose only ONE of the following, corresponding to your OS version

#Ubuntu 14.04
curl https://packages.microsoft.com/config/ubuntu/14.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

#Ubuntu 16.04
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list > /etc/apt/sources.list.d/mssql-release.list

#Ubuntu 17.10
curl https://packages.microsoft.com/config/ubuntu/17.10/prod.list > /etc/apt/sources.list.d/mssql-release.list

exit
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install msodbcsql17
# optional: for bcp and sqlcmd
sudo ACCEPT_EULA=Y apt-get install mssql-tools
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc
# optional: for unixODBC development headers
sudo apt-get install unixodbc-dev

Drivers PHP para Microsoft SQL Server:

sudo pecl install sqlsrv
sudo pecl install pdo_sqlsrv
sudo su
echo extension=pdo_sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/30-pdo_sqlsrv.ini
echo extension=sqlsrv.so >> `php --ini | grep "Scan for additional .ini files" | sed -e "s|.*:\s*||"`/20-sqlsrv.ini
exit

Apache:

sudo su
apt-get install libapache2-mod-php7.0 apache2
a2dismod mpm_event
a2enmod mpm_prefork
a2enmod php7.0
echo "extension=pdo_sqlsrv.so" >> /etc/php/7.0/apache2/conf.d/30-pdo_sqlsrv.ini
echo "extension=sqlsrv.so" >> /etc/php/7.0/apache2/conf.d/20-sqlsrv.ini
exit

Reiniciar apache

sudo service apache2 restart

Fuente:

https://docs.microsoft.com/en-us/sql/connect/php/installation-tutorial-linux-mac?view=sql-server-2017#installing-the-drivers-on-ubuntu-1604-and-1710

https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/installing-the-microsoft-odbc-driver-for-sql-server?view=sql-server-2017

more
Standard

Personalizar error 403

En la raíz se crea el archivo .htaccess con las ip a las cuales se les permite el acceso y la url del archivo que se va a abrir si no está dentro de las ip permitidas.

sudo nano .htaccess
<RequireAny>
 Require ip 190.248.159.226
 Require ip 190.248.159.227
</RequireAny>
ErrorDocument 403 /error/403.php

Se debe crear la carpeta error y dentro de ella su respectivo .htaccess

<RequireAll>
    Require all granted  
</RequireAll>

Dentro de la carpeta error se crea el archivo 403.php con el siguiente contenido:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="utf-8" />
 <meta name="viewport" content="width=device-width, initial-scale=1"/>
 <script src="//use.fontawesome.com/84c9ca0cf8.js"></script>
 <title>403 Acceso Denegado</title>

<style type="text/css">
 @import url('//fonts.googleapis.com/css?family=Roboto');
 body {
 background: #2e739a;
 color: #D7D7D7;
 font: 16px/1.3 "Roboto", sans-serif;
 }
 header {
 width: 100%;
 margin:0px auto;
 }
 h1 {
 text-align: center;
 color:#D7D7D7;
 font: 30px/1 "Roboto";
 text-transform: uppercase;
 margin: 5% auto 5%;
 margin-bottom: 35px;
 }

article { display: block; text-align: center; width: 650px; margin: 10px auto; }

@media screen and (max-width: 720px) {
 article { display: block; text-align: center; width: 450px; margin: 0 auto; }
 h1 { font: 70px/1 "Roboto";}
 .wrap {margin-top: 50px;}
 }

@media screen and (max-width: 480px) {
 article { display: block; text-align: center; width: 300px !important; margin: 0 auto; }
 h1 { font: 50px/1 "Roboto";}
 .wrap {margin-top: 50px;}

}
 </style>

<!--[if IE]><script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->

</head>
<body>
<div class="wrap">
 <article>
 <header>
 <h1 id="fittext1">Error 403<i class="fa fa-exclamation-triangle fa-fw"></i></h1>
 </header>
 <p id="fittext2">Acceso Denegado </br> Su IP <?php echo $_SERVER['REMOTE_ADDR']; ?> no está autorizada para ver este contenido </br> Por favor contacte al administrador</p>
 </article>
</div>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/FitText.js/1.2.0/jquery.fittext.js"></script>
<script type="text/javascript">
 $("#fittext1").fitText(1.1);
 $("#fittext2").fitText(1.5);
</script>
</body>
</html>
more
Standard

Permitir direcciones ip desde .htaccess

Editar el archivo:

/etc/apache2/apache2.conf

Agregar la línea:

<Directory /var/www/html/>
 AllowOverride All
 </Directory>

Luego crear el archivo .htaccess:

<RequireAny>
 Require ip 190.248.159.226
 Require ip 190.248.159.227
 </RequireAny>

Se pueden extraer las ip por paises en la página https://www.ip2location.com/free/visitor-blocker
more
Standard

Powerbi: Host is blocked because of many connection errors. Unblock with ‘mysqladmin flush-hosts’

Powerbi muestra el error Host ‘host_name‘ is blocked because of many connection errors. Unblock with ‘mysqladmin flush-hosts’ luego de solicitar la actualización.

La solución es cambiar el valor predeterminado el cual es 10

SET GLOBAL max_connect_errors=10000;

Para consultar el cambio:

show variables like "max_connect_errors";
more
more
Standard

Solución: Could not find gem ‘mysql2 (~> 0.4.0)’

Al instalar redmine en Debian 9.2 aparece el error:

Could not find gem 'mysql2 (~> 0.4.0)' in any of the gem sources listed in your
Gemfile or available on this machine.

Solución:

sudo apt-get install ruby-mysql2

Una sugerencia que aun no he probado es instalarlo así:

apt-get install redmine redmine-mysql

 

more
more
Standard

PHP Warning: file_put_contents(TelegramException.log): failed to open stream: Permission denied in …/vendor/longman/telegram-bot/src/Exception/TelegramException.php on line 24

Luego de revisar la línea 24 del archivo al que hace referencia, se puede observar que trata de escribir y añadir un log.

namespace Longman\TelegramBot\Exception;

class TelegramException extends \Exception
{

    public function __construct($message, $code = 0)
    {
        parent::__construct($message, $code);

        $path = 'TelegramException.log';
        $status = file_put_contents(
            $path,
            date('Y-m-d H:i:s', time()) .' '. self::__toString() . "\n",
            FILE_APPEND
        );

    }
}

Pero no tiene permisos de hacerlo. Por lo que hay que darselos a la carpeta en donde se encuentra el archivo php que se esta ejecutando

chmod 777 [carpeta donde se esta ejecutando el script php]

 

more
Standard

Cacti no grafica

En mi caso me quedé sin espacio en disco. Luego cacti dejó de graficar. El problema se encuentra en que se daña una tabla llamada poller_output. Hay que borrarla y volverla a generar con la siguiente consulta:

DROP TABLE IF EXISTS `poller_output`;

CREATE TABLE `poller_output` (
  `local_data_id` mediumint(8) unsigned NOT NULL DEFAULT '0',
  `rrd_name` varchar(19) NOT NULL DEFAULT '',
  `time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `output` text NOT NULL,
  PRIMARY KEY (`local_data_id`,`rrd_name`,`time`) USING BTREE
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
more