quarta-feira, 27 de março de 2019
Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in..
Se você estiver usando a lib fpdf para gerar arquivos PDF e receber a mensagem de erro abaixo:
"Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in{...}"
Prossiga da seguinte forma para resolver o seu problema:
No arquivo gerado do pdf, procure pela linha $pdf->Output(); e em seguida adicionar o comando ob_start ();
O comando acima, vai iniciar o buffer e fazer com que o arquivo que foi gerado seja enviado para o seu browser.
A função do ob_start() é inicia o buffer e para limpar o buffer é o comando é ob_clean() e ob_end_clean(). O ob_end_clean() limpa o buffer e ainda exibe aquilo que foi armazenado nele.
By
Ricardo Oliveira
às
março 27, 2019
Um comentário:
"Fatal error: Uncaught Exception: FPDF error: Some data has already been output, can't send PDF file in{...}"
Prossiga da seguinte forma para resolver o seu problema:
No arquivo gerado do pdf, procure pela linha $pdf->Output(); e em seguida adicionar o comando ob_start ();
O comando acima, vai iniciar o buffer e fazer com que o arquivo que foi gerado seja enviado para o seu browser.
A função do ob_start() é inicia o buffer e para limpar o buffer é o comando é ob_clean() e ob_end_clean(). O ob_end_clean() limpa o buffer e ainda exibe aquilo que foi armazenado nele.

domingo, 17 de março de 2019
Execute o Windows 95 no Linux-Ubuntu
Aprenda o passo a passo para executar o Windows 95 no linux:
1. Faça o download da versão mais recente do windows95 para o Ubuntu:
Está disponível em formato zip, rpm e deb para diversos sistemas operacionais.
Vide mais detalhes aqui.
2. Depois que você tiver o download do arquivo, você pode instalá-lo usando o seguinte comando:
sudo apt install gdebi
sudo gdebi windows95_1.1.0_amd64.deb3. Para executar basta digitar no terminal o comando abaixo:
windows95
Vídeo com o passo a passo:
Mais detalhes sobre o projeto windows95 no github:

O arquivo de configuração padrão do nginx - default
/etc/nginx/sites-available/default
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# proxy_pass http://localhost:8080;
# proxy_http_version 1.1;
# proxy_set_header Upgrade $http_upgrade;
# proxy_set_header Connection 'upgrade';
# proxy_set_header Host $host;
# proxy_cache_bypass $http_upgrade;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
# fastcgi_pass unix:/run/php/php7.0-fpm.sock;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
# listen 80;
# listen [::]:80;
#
# server_name example.com;
#
# root /var/www/example.com;
# index index.html;
#
# location / {
# try_files $uri $uri/ =404;
# }
#}
By
Ricardo Oliveira
às
março 17, 2019
Nenhum comentário:
##
# You should look at the following URL's in order to grasp a solid understanding
# of Nginx configuration files in order to fully unleash the power of Nginx.
# http://wiki.nginx.org/Pitfalls
# http://wiki.nginx.org/QuickStart
# http://wiki.nginx.org/Configuration
#
# Generally, you will want to move this file somewhere, and start with a clean
# file but keep this around for reference. Or just disable in sites-enabled.
#
# Please see /usr/share/doc/nginx-doc/examples/ for more detailed examples.
##
# Default server configuration
#
server {
listen 80 default_server;
listen [::]:80 default_server;
# SSL configuration
#
# listen 443 ssl default_server;
# listen [::]:443 ssl default_server;
#
# Note: You should disable gzip for SSL traffic.
# See: https://bugs.debian.org/773332
#
# Read up on ssl_ciphers to ensure a secure configuration.
# See: https://bugs.debian.org/765782
#
# Self signed certs generated by the ssl-cert package
# Don't use them in a production server!
#
# include snippets/snakeoil.conf;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
# proxy_pass http://localhost:8080;
# proxy_http_version 1.1;
# proxy_set_header Upgrade $http_upgrade;
# proxy_set_header Connection 'upgrade';
# proxy_set_header Host $host;
# proxy_cache_bypass $http_upgrade;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
# fastcgi_pass unix:/run/php/php7.0-fpm.sock;
#}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
}
# Virtual Host configuration for example.com
#
# You can move that to a different file under sites-available/ and symlink that
# to sites-enabled/ to enable it.
#
#server {
# listen 80;
# listen [::]:80;
#
# server_name example.com;
#
# root /var/www/example.com;
# index index.html;
#
# location / {
# try_files $uri $uri/ =404;
# }
#}

ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded
Recentemente, fui fazer uma pequena alteração no meu banco de dados, para mudar as permissões de um determinado usuário e acabei perdendo o acesso ao banco.
Depois de executar o comando, mencionado acima, comecei a receber uma mensagem informando a tabela de usuário estaria corrompida e daí pra frente eu não conseguia fazer mais nenhuma alteração no meu banco de dados e quando tentava entra no mysql, recebia a seguinte mensagem de erro: "ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded"
Pesquisando sobre unix_socket na internet descobrimos que ele é um plug-in de autenticação que permite usar as credenciais do sistema operacional para se conectar ao MySQL/MariaDB. Ele faz isso por meio do arquivo de soquete local que é definido pela variável do sistema de soquete.
Host: Sistema: Ubuntu 18.04.2 LTS - 64 bits
CPU: Intel® Core™ i5-4460 CPU @ 3.20GHz × 4
Análise do problema:
O problema aconteceu depois da repetição de um simples comando: GRANT SELECT, INSERT, UPDATE ON dbsystemmyimei.* TO usermyimeico;Depois de executar o comando, mencionado acima, comecei a receber uma mensagem informando a tabela de usuário estaria corrompida e daí pra frente eu não conseguia fazer mais nenhuma alteração no meu banco de dados e quando tentava entra no mysql, recebia a seguinte mensagem de erro: "ERROR 1524 (HY000): Plugin 'unix_socket' is not loaded"
Pesquisando sobre unix_socket na internet descobrimos que ele é um plug-in de autenticação que permite usar as credenciais do sistema operacional para se conectar ao MySQL/MariaDB. Ele faz isso por meio do arquivo de soquete local que é definido pela variável do sistema de soquete.
Mais detalhes em mariadb.
CPU: Intel® Core™ i5-4460 CPU @ 3.20GHz × 4
Memória: 8GB
2. Navegue para a pasta /var/run
3. Agora faça o backup :
4. Pare o serviço mysql
5. Agora vamos restaurar o backup
6. Inicie o mysql no modo seguro
7 . Em seguida, efetue login no mysql como root:
8. Confira se o plugin de autenticação está configurado para o usuário root:
Você pode ver que ele está usando o plug-in unix_socket
9. Para mudar para o plug-in mysql_native_password, execute o seguinte comando:
10. Agora é só sair do mysql modo segurança:
11. Pare o modo segurança
12. Inicie o mysql ou mariadb, novamente
13. Agora é só fazer o login com sua senha normal:
Problema resolvido!
Solução
Antes de resolvermos esse problema, será preciso fazer o backup da pasta mysql porque, por algum motivo, ainda desconhecido, o mysql.sock é deletado toda vez que o serviço mysql é parado e o mysqld_safe não pode criá-lo novamente. Por isso, para contornarmos esse problema, é preciso fazermos o backup da pasta sock e restaurar antes de iniciar o mysqld_safe.
Passo a passo:
Essa solução pode ser aplicada no mysql ou mariadb1. Se o mysql ou mariadb estiver parado, inicia com o seguinte comando:
sudo service mysql start
2. Navegue para a pasta /var/run
cd /var/run
3. Agora faça o backup :
sudo cp -rp ./mysqld ./mysqld.bak
4. Pare o serviço mysql
sudo service mysql stop
5. Agora vamos restaurar o backup
sudo mv ./mysqld.bak ./mysqld
6. Inicie o mysql no modo seguro
sudo mysqld_safe --skip-grant-tables --skip-networking &
7 . Em seguida, efetue login no mysql como root:
mysql -u root
8. Confira se o plugin de autenticação está configurado para o usuário root:
select Host,User,plugin from mysql.user where User='root';
Você pode ver que ele está usando o plug-in unix_socket
9. Para mudar para o plug-in mysql_native_password, execute o seguinte comando:
update mysql.user set plugin='mysql_native_password';
10. Agora é só sair do mysql modo segurança:
quit;
11. Pare o modo segurança
sudo kill -9 $(pgrep mysql)
12. Inicie o mysql ou mariadb, novamente
sudo systemctl start mysql
13. Agora é só fazer o login com sua senha normal:
mysql -u root -p
Problema resolvido!
Vide o passo a passo em vídeo

sexta-feira, 15 de março de 2019
Como trocar a porta padrão da Área de Trabalho Remota do Windows-RDP
Se você estiver precisando trocar a porta padrão do serviço RDP do Windows, basta acessar a chave de registro: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TerminalServer\WinStations\RDP-Tcp procurar pela chave PortNumber e trocar o número da porta; ou siga os passo do vídeo abaixo:
By
Ricardo Oliveira
às
março 15, 2019
Nenhum comentário:

quarta-feira, 13 de março de 2019
Problema para desinstalar o MySql no Linux-Ubuntu
Se você estiver com problema no MySQL e precisa fazer reinstalação, siga os passos abaixo para desinstalar e remover todos os pacotes e pastas do mysql:
1. Desinstalar e remover todos os pacotes
sudo apt-get remove --purge mysql-server mysql-client mysql-common -y
sudo apt-get autoremove -y
sudo apt-get autoclean
2. Remover a pasta MySQL
rm -rf /etc/mysql
3. Se você quiser, ainda pode exclui todos os arquivos do mysql no seu servidor:
sudo find / -iname 'mysql*' -exec rm -rf {} \;
No final da remoção, se você quiser reinstalar e configurar o mysql novamente, siga os passos abaixo:
1. Instalar o MySql
sudo apt-get install mysql-server
2. Para fazer as configurações de segurança do banco:
sudo mysql_secure_installation
