Configure sua API de consulta CPF em apenas alguns passos simples
Antes de começar, certifique-se de que seu servidor atende aos seguintes requisitos:
php -v php -m | grep -i pdo php -m | grep -i sqlite
Faça o download dos arquivos da API e extraia-os no diretório desejado:
git clone https://github.com/seu-repositorio/cpf-api.git cd cpf-api
# Baixe o arquivo ZIP e extraia unzip cpf-api.zip -d /var/www/html/
Estrutura de diretórios esperada:
cpf-api/ ├── api/ │ └── index.php ├── config/ │ └── config.php ├── includes/ │ ├── auth.php │ ├── database.php │ ├── cpf-consulta.php │ └── functions.php ├── admin/ │ ├── index.html │ └── setup.php ├── database/ ├── index.html ├── login.html ├── install.html └── .htaccess
Configure os arquivos de ambiente e permissões:
# Permissões para diretórios
find . -type d -exec chmod 755 {} \;
# Permissões para arquivos
find . -type f -exec chmod 644 {} \;
# Permissões especiais para pasta database
chmod 775 database/
// Edite o arquivo config/config.php
// Altere as configurações conforme necessário
define('ENVIRONMENT', 'production');
define('DEBUG', false);
define('ADMIN_PASSWORD', 'sua_senha_secreta_aqui');
# O banco de dados será criado automaticamente # Verifique se a pasta database tem permissão de escrita ls -la database/
Configure seu servidor web para servir a aplicação:
server {
listen 80;
server_name seu-dominio.com;
root /var/www/html/cpf-api;
index index.php index.html;
location / {
try_files $uri $uri/ /index.html;
}
location /api {
try_files $uri $uri/ /api/index.php?$query_string;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
# O arquivo .htaccess já está configurado
# Certifique-se de que o mod_rewrite está habilitado
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.html [QSA,L]
Após configurar, reinicie o servidor:
# Nginx sudo systemctl restart nginx sudo systemctl restart php8.0-fpm # Apache sudo systemctl restart apache2
Configure SSL para produção (recomendado):
# Instalar Certbot sudo apt update sudo apt install certbot python3-certbot-nginx # Gerar certificado sudo certbot --nginx -d seu-dominio.com -d www.seu-dominio.com # Testar renovação automática sudo certbot renew --dry-run
O Certbot configurará automaticamente o SSL no seu Nginx.
Após a instalação, acesse sua aplicação:
Admin URL: https://seu-dominio.com/admin/setup.php Senha Admin: admin123 (altere no arquivo config/config.php)
Problemas comuns e suas soluções:
Verifique a configuração do servidor web e as regras de rewrite.
# Verificar configuração Nginx sudo nginx -t sudo systemctl restart nginx
Verifique as permissões da pasta database e a extensão PDO SQLite.
# Verificar permissões ls -la database/ chmod 775 database/ # Verificar extensão SQLite php -m | grep pdo_sqlite
Verifique se a API key está sendo enviada corretamente no header.
curl -H "Authorization: Bearer sua_api_key" \
https://seu-dominio.com/api/consulta?cpf=12345678901
Precisa de ajuda? Consulte a documentação completa em
docs/README.md ou acesse o painel admin para mais opções.