O WP-config é um dos arquivos mais poderosos do seu site WordPress e desempenha um papel importante no funcionamento do WordPress nos bastidores.
Aqui na WPBeginner, estamos mexendo no WordPress há anos e descobrimos alguns truques de configuração do WordPress muito úteis que a maioria dos iniciantes não conhece.
Neste artigo, compartilharemos alguns dos truques mais úteis de configuração do WordPress que o ajudarão a solucionar problemas, otimizar e proteger seu site WordPress.
Como usar esses truques de configuração do WordPress?
O WordPress vem com um poderoso arquivo de configuração chamado wp-config.php. Ele está localizado na pasta raiz de cada site do WordPress e contém importantes definições de configuração.
Para saber mais, consulte nosso guia sobre como editar o arquivo wp-config.php no WordPress.
Todas as melhores empresas de hospedagem WordPress vêm com instalação do WordPress em um clique, o que significa que você nunca precisará editar o arquivo wp-config.php durante a instalação. Esse é o principal motivo pelo qual muitos usuários não estão familiarizados com o poder desse arquivo.
Você pode usar o arquivo wp-config para solucionar problemas, otimizar e proteger seu site WordPress.
O arquivo wp-config.php é uma ferramenta poderosa, e um pequeno erro no código pode tornar seu site inacessível. Você deve editar esse arquivo somente quando necessário e sempre criar um backup completo do WordPress antes de fazer qualquer alteração,
Dito isso, vamos dar uma olhada em alguns truques úteis de configuração do WordPress que você pode usar em seu site WordPress. Você pode usar os links rápidos abaixo para ir direto aos truques que mais lhe interessam:
- The Basic WordPress Configuration Settings
- Adding Security Keys in WordPress
- Change WordPress Table Prefix
- Turn on Debugging in WordPress
- Changing Your Site or WordPress Address
- Override File Permissions
- Changing Post Revision Settings
- Changing WordPress Trash Settings
- Adding FTP/SSH Constants to WordPress Configuration
- Allow Automatic Database Repair
- Increase PHP Memory Limit
- Moving wp-content Directory
- Use Custom User Tables
- Enable Multi-Site Network
- Securing Your WordPress Configuration File
1. As definições básicas de configuração do WordPress
Por padrão, você só precisa preencher as configurações do banco de dados durante a instalação do WordPress. Se você não tiver um arquivo wp-config.php, será solicitado a criar um arquivo preenchendo as informações do banco de dados.
O WordPress tentará salvar automaticamente essas configurações gerando um arquivo wp-config.php. No entanto, se isso falhar, você precisará adicioná-las manualmente.
Para fazer isso, você precisará se conectar ao seu site usando um cliente FTP. Depois de conectado, você precisará renomear o arquivo wp-config-sample.php para wp-config.php.
Depois disso, você pode ir em frente e editar o arquivo wp-config.php recém-criado. Você precisará adicionar as informações do seu banco de dados alterando as seguintes linhas:
define('DB_NAME', 'database-name');
define('DB_USER', 'database-username');
define('DB_PASSWORD', 'database-password');
define('DB_HOST', 'localhost');
Não se esqueça de salvar suas alterações e fazer upload do arquivo de volta para o servidor.
2. Adição de chaves de segurança no WordPress
A instalação padrão do WordPress adiciona automaticamente chaves de segurança ao seu arquivo de configuração. Essas chaves de segurança são usadas para adicionar uma camada extra de segurança ao seu login do WordPress e à autenticação de cookies.
Você sempre pode gerar novamente as chaves de segurança se achar que alguém pode estar acessando o site sem a devida autenticação. A alteração das chaves de segurança fará o logout de todos os usuários conectados.
define( 'AUTH_KEY', 'put your unique phrase here' );
define( 'SECURE_AUTH_KEY', 'put your unique phrase here' );
define( 'LOGGED_IN_KEY', 'put your unique phrase here' );
define( 'NONCE_KEY', 'put your unique phrase here' );
define( 'AUTH_SALT', 'put your unique phrase here' );
define( 'SECURE_AUTH_SALT', 'put your unique phrase here' );
define( 'LOGGED_IN_SALT', 'put your unique phrase here' );
define( 'NONCE_SALT', 'put your unique phrase here' );
Para obter mais informações, consulte nosso artigo sobre chaves de segurança do WordPress e como usá-las.
3. Alterar o prefixo da tabela do WordPress
Uma instalação padrão típica do WordPress adiciona um prefixo wp_ a todos os nomes de tabelas do banco de dados do WordPress. Alguns especialistas em segurança do WordPress acreditam que a alteração do prefixo da tabela pode tornar seu banco de dados do WordPress mais seguro.
Para fazer isso, você precisa alterar a seguinte linha na configuração do WordPress.
$table_prefix = 'wp_';
Se estiver fazendo isso para um site existente, também será necessário alterar o prefixo da tabela no banco de dados do WordPress. Para fazer isso, consulte nosso artigo sobre como alterar o prefixo do banco de dados do WordPress.
4. Ativar a depuração no WordPress
O WordPress vem com um recurso de depuração que permite que você veja ou oculte os erros do WordPress quando estiver no modo de depuração. Para ativar esse recurso, você precisará adicionar esta regra no arquivo de configuração do WordPress.
define( 'WP_DEBUG', true );
Você também pode ativar a depuração e ocultar os erros no seu site, salvando-os em um arquivo de log. Para fazer isso, adicione as seguintes linhas às suas definições de configuração.
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Isso criará um arquivo debug.log dentro da pasta wp-content do seu site e armazenará todos os erros de depuração e avisos dentro do arquivo de registro.
5. Alteração do endereço do site ou do WordPress
Normalmente, você pode definir os URLs do WordPress e do site na página Configurações ” Geral. No entanto, talvez você não consiga fazer isso se não tiver acesso ao seu site do WordPress, se estiver vendo erros de redirecionamento ou se tiver acabado de mover seu site.
Nesse caso, você pode alterar os URLs do site e do WordPress por meio do arquivo wp-config.php adicionando as seguintes linhas:
define('WP_HOME', 'http://www.example.com');
define('WP_SITEURL', 'http://www.example.com');
Não se esqueça de substituir example.com por seu próprio nome de domínio.
6. Substituir permissões de arquivos
O WordPress permite que você substitua as permissões de arquivo se o seu host tiver permissões restritivas para todos os arquivos de usuário. A maioria dos usuários não precisa disso, mas existe para aqueles que precisam.
define('FS_CHMOD_FILE', 0644);
define('FS_CHMOD_DIR', 0755);
Para saber mais sobre permissões de arquivos, consulte nosso artigo sobre como corrigir erros de permissões de arquivos e pastas no WordPress.
7. Alteração das configurações de pós-revisão
O WordPress tem um recurso muito útil de revisão de posta gens que permite desfazer alterações em suas postagens e páginas, revertendo para uma versão anterior ou para um salvamento automático.
Você pode desativar ou alterar as configurações de pós-revisão por meio do arquivo de configuração. Aqui estão as diferentes configurações de revisão de postagem que você pode usar.
Você pode alterar a frequência com que o WordPress armazena um salvamento automático como uma revisão, adicionando a seguinte linha:
define('AUTOSAVE_INTERVAL', 120); // in seconds
Alguns artigos em seu site podem ter dezenas de revisões de postagens, dependendo do tempo necessário para escrevê-los. Se você acha que esse recurso o incomoda, pode limitar o número de revisões por publicação.
define('WP_POST_REVISIONS', 10);
Se, por algum motivo, você quiser desativar totalmente o recurso de revisões de postagens (o que não é recomendado), poderá usar o código a seguir para desativar as revisões de postagens.
define( 'WP_POST_REVISIONS', false );
8. Alteração das configurações da lixeira do WordPress
O WordPress vem com um recurso de lixeira chamado Lixeira. Quando um usuário envia uma postagem para a lixeira, ela continua armazenada em seu site pelos próximos 30 dias como lixeira. Após esse período, o WordPress os exclui automaticamente para sempre.
Você pode alterar esse comportamento mudando o número de dias que deseja manter a lixeira.
define( 'EMPTY_TRASH_DAYS', 15 ); // 15 days
Se você não gostar desse recurso, poderá desativá-lo adicionando a função abaixo:
define('EMPTY_TRASH_DAYS', 0 );
Observação: Usar zero significa que suas postagens serão excluídas permanentemente. O WordPress não solicitará confirmação quando você clicar em Excluir permanentemente. Qualquer clique acidental pode lhe custar…
Para saber mais, consulte nosso artigo sobre como limitar ou desativar o recurso de esvaziamento automático da lixeira no WordPress.
9. Adição de constantes FTP/SSH à configuração do WordPress
Por padrão, o WordPress permite que você atualize o núcleo, os temas e os plug-ins do WordPress a partir do painel de administração. Há alguns hosts que exigem uma conexão FTP ou SSH sempre que você tenta atualizar ou instalar um novo plug-in.
Ao usar os códigos, você pode definir as constantes de FTP ou SSH e nunca mais precisar se preocupar com isso.
// forces the filesystem method: "direct", "ssh", "ftpext", or "ftpsockets"
define('FS_METHOD', 'ftpext');
// absolute path to root installation directory
define('FTP_BASE', '/path/to/wordpress/');
// absolute path to "wp-content" directory
define('FTP_CONTENT_DIR', '/path/to/wordpress/wp-content/');
// absolute path to "wp-plugins" directory
define('FTP_PLUGIN_DIR ', '/path/to/wordpress/wp-content/plugins/');
// absolute path to your SSH public key
define('FTP_PUBKEY', '/home/username/.ssh/id_rsa.pub');
// absolute path to your SSH private key
define('FTP_PRIVKEY', '/home/username/.ssh/id_rsa');
// either your FTP or SSH username
define('FTP_USER', 'username');
// password for FTP_USER username
define('FTP_PASS', 'password');
// hostname:port combo for your SSH/FTP server
define('FTP_HOST', 'ftp.example.org:21');
Observação: não se esqueça de substituir o caminho do WordPress e ftp.example.com por suas próprias informações de host de FTP.
10. Permitir reparo automático do banco de dados
O WordPress vem com um recurso interno para otimizar e reparar automaticamente o banco de dados do WordPress. No entanto, esse recurso é desativado por padrão.
Para ativar esse recurso, você precisa adicionar a seguinte linha ao seu arquivo de configuração do WordPress.
define('WP_ALLOW_REPAIR', true);
Depois de adicionar isso, você precisa visitar o seguinte URL para otimizar e reparar o banco de dados do WordPress.
http://example.com/wp-admin/maint/repair.php
Não se esqueça de substituir example.com por seu próprio nome de domínio. Você verá uma página simples com as opções para reparar ou reparar e otimizar o banco de dados. Não é necessário estar conectado para acessar essa página.
11. Aumentar o limite de memória do PHP
Alguns dos erros mais comuns do WordPress são causados pelo esgotamento da memória do PHP. Você pode aumentar o limite de memória do PHP por meio do arquivo wp-config.php. Basta colar o código abaixo:
define('WP_MEMORY_LIMIT', '128M');
12. Mover o diretório wp-content
O WordPress permite que você mova seu diretório wp-content. Alguns especialistas acreditam que isso pode ajudar a fortalecer a segurança do WordPress.
Você precisará adicionar o seguinte código ao seu arquivo wp-config.php:
define( 'WP_CONTENT_DIR', $_SERVER['DOCUMENT_ROOT'] . '/blog/wp-content' );
define( 'WP_CONTENT_URL', 'http://example/blog/wp-content');
define( 'WP_PLUGIN_DIR', $_SERVER['DOCUMENT_ROOT'] . '/blog/wp-content/plugins' );
define( 'WP_PLUGIN_URL', 'http://example/blog/wp-content/plugins');
Não se esqueça de substituir example.com por seu próprio nome de domínio.
13. Usar tabelas de usuário personalizadas
Por padrão, o WordPress salva todos os dados do usuário nas tabelas wp_users e wp_usermeta. Usando a função abaixo, você pode especificar a tabela em que deseja armazenar as informações do usuário.
define('CUSTOM_USER_TABLE', $table_prefix.'my_users');
define('CUSTOM_USER_META_TABLE', $table_prefix.'my_usermeta');
14. Ativar rede com vários locais
Cada site do WordPress vem com um recurso multisite integrado que permite criar vários sites do WordPress usando a mesma instalação. Para saber mais, consulte nosso guia completo sobre como instalar e configurar a rede multisite do WordPress.
Você pode ativar a funcionalidade multisite adicionando a seguinte linha ao seu arquivo de configuração do WordPress:
define('WP_ALLOW_MULTISITE', true);
15. Proteção do arquivo de configuração do WordPress
Como você pode ver, o arquivo wp-config.php contém configurações realmente importantes do WordPress. Por padrão, ele está localizado na pasta raiz do WordPress, mas você pode movê-lo. Ele pode ser movido para fora do seu diretório public_html, para que os usuários não possam acessá-lo. Por padrão, o WordPress sabe que deve procurar em outros diretórios se os arquivos não forem encontrados na pasta raiz do WordPress.
Você também pode adicionar o seguinte código ao seu arquivo .htaccess para limitar o acesso a esse arquivo.
# Protect wp-config.php
<Files wp-config.php>
order allow,deny
deny from all
</Files>
Esperamos que este artigo tenha ajudado você a aprender alguns truques úteis de configuração do WordPress que você não conhecia. Talvez você também queira ver nossa mega lista de mais de 57 dicas, truques e hacks do WordPress mais procurados que você pode usar em seu site ou nossas escolhas das principais ferramentas para freelancers, designers e desenvolvedores do WordPress.
Se você gostou deste artigo, inscreva-se em nosso canal do YouTube para receber tutoriais em vídeo sobre o WordPress. Você também pode nos encontrar no Twitter e no Facebook.
tareq khury
hello and thanks for this important post .
my question is where i must add this codes , in the config.php file
but in which line exactly .
regards
WPBeginner Support
There is no specific line but it is normally best to add the code to the bottom so it is easy to find and remove should you want in the future.
Administrador
Ali
Thanks alot. But i want to know something more detailed about point 9. Where to place this code and more?
WPBeginner Support
The code would go into your wp-config.php file
Administrador
Gurjit Singh
Thanks for this useful post.
i was looking for this 10. Allow Automatic Database Repair.
Thank you very much.
Thanks and Regards,
Gurjit Singh
WPBeginner Support
Glad our article could help
Administrador
Sunday
I rely on your tutorials for my website development. The problems here are that you did not state clearly where these codes will be pasted in the various environments. Looking forward to your response.
Sunny Sum
I want to increase my server timeout limit, where I can find that code???
Stu Rader
Wow really awesome. This helped so much.
I’m wresting with one thing setting up my own CDN (which the above took care of 98%:).
I’m trying to exclude a sub-folder on my CDN sub-domain as it’s throwing an access violation.
I’ve tried a half dozen NGINX CORS directives in a server block .conf with no joy.
I want to figure out how to use this file in the main domain rather than how it’s written below:
Access to Font at ‘https://cdn.mydomain.com/wp-content/themes/mytheme/includes/lib/assets/fonts/fontawesome/fontawesome-webfont.woff?v=4.7.0’ from origin ‘https://mydomain.com’ has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’ header is present on the requested resource. Origin ‘https://mydomain.com’ is therefore not allowed access.
Thanks if you can point me to a fix or relevant info you may have !!
Stu
Hypez
They can verufy the information in the wp-config.php if the password or database names correspond and change them if not.
Gopal
My WordPress website adds weird numbers as suffix to every page URL. Why is it happening? I changed the permalinks settings to display post names; it didn’t help.
Could you please guide me?
Here are a few page urls of my site:
WPBeginner Support
Try these WordPress troubleshooting tips step by step and see if it resolves your issue.
Administrador
Alex
I have this ‘issue’ – for me its down to backup buddy needing to be run in alternative WP cron mode. The backup buddy FAQ told me to add this:
define(‘ALTERNATE_WP_CRON’, true);
to my wp_config.php file which now adds random numbers etc to URLs.
Its this for me as removing it stops it but also stops backup buddy from working correctly.
David Pascal
I have always enjoyed reading contents on this site. Thanks for sharing this awesome tricks.
ugwu victor
I use useronline plugin…When am in the useronline dashboard I notice that some users want to access my default css, upload images link with their browser! So am scared may be they want to hack my site! Please any help on how to stop them
Exnius
Hey, amazint tricks, thanks a lot. Very useful!
Garratt Campton
WordPress Error Log –
How should I do this in a local environment?
I’m currently using DesktopServer (Xampp lite – Installs sites with .dev extension locally eg. “mysite.dev”) with SourceTree (Git) – However trying to figure out what the path I should be using to my error log file is proving difficult. Could I use a full URL path such as “http://mysite.dev/php_error.log” ? or does it need to be the system file path “C:/Users/Garratt/Documents/mysite.dev/php_error.log” ?
WPBeginner Staff
Yes.
German learning Munich
Hi thanks for the great summary!
I have a question: is any change in the wp-config immediately effective?
Angsuman Chakraborty
Yes, it is immediately effective
Nathan Pinno
Got a question: How do I transfer ownership of a site from one user to another? Like I set it up with my admin account, but I want to have another user be the main admin and do updates and posts. I doubt I can just set them as an admin and myself as a subscriber and be done with it, so what’s the correct route of doing so?
WPBeginner Staff
Yes that’s one way to do it. A WordPress site can also have multiple administrators.
If you also want to transfer them the ownership of domain, web hosting, and database then you will have to create a user account for them in your web hosting control panel. After that you can give them the complete control on domain, hosting, and database as well.
Nathan Pinno
They already have all that, I’m just helping them redevelop their website (cause it’s not a good look right now nor is it easy to update ATM). Found this awesome church theme for them (cause it’s my church’s website I’m working on), and wanted to see how difficult it would be to switch admins. Last time a site of mine had multiple admins, just the first admin (ID #1) could update the plugins, themes, and WP in general.
Anon
Im not too sure but usually u have to do it in your Terminal like : sudo adduser sudo.
john
After I got rid of the database error, now I dont have any errors but now I have just blank page with no source code ? Please help what to do now. Thnaks
Toufiq Hassan Shawon
Thanks, It helps me lot, why dont you add
define(‘WP_CACHE’, true);
roger
useful!
so, what about the Securing Your WP-Config File ? thank you
Oscar
Just a heads up, that the indicated GoDaddy Hostname doesn’t work (maybe at least not for everyone) and the $_ENV option didn’t either.
I found instructions on where to find my specific Hostname here:
http://support.godaddy.com/help/article/39/viewing-your-databases-details?locale=en
Maganizo
I can’t thank you more! You’ve touched on the heart of any online work in a very clear way! You’re great teachers indeed! It can’t be any better than this! Write more!
brad
Hey Guys
Great site, great info just found it. with the secure
Securing Your WP-Config File
where is the code that we need? please
Brad
Bon
is there any configuration in wordpress 3.5 so that the uploaded files will use the defined WP_HOME or WP_SITEURL? thanks
Heather Wood
Awesome. There is so much stuff about wordpress I didn’t even know. Like the repair database define code. this is one great article. I will have to bookmark this for sure.
yadicemil
Thanks for this useful tips.I!m a beginner and I have a wordpress.org web site.
I have followed your instructions and changed the wp-config file by copying the secure keys grabbed from the web site: https://api.wordpress.org/secret-key/1.1/salt/
After putting the new config file into the WP-Admin Folder in the server it gives an error “Parse error: syntax error, unexpected T_VARIABLE….”
That line is: “$table_prefix = ‘wp_’;” and it has never been changed.
How can I correct this error? Thanks.
wpbeginner
@yadicemil You are not supposed to put this in the wp admin folder.
Mark Hedley
Like it
marco
you rock man, thanks for the info
Tony Cosentino
Great information about such an important are as configuration. With all the pharma hacks going on recently the last tip is my favourite. Protecting that damn wp-config file seems to be the key to palace these days.
Thank you for the effort putting all of this information in one place for us all to benefit.
kind regards
Tony
Aidan
Cool, this is informative and always a good flashback if I forgot any of them.
Thanks for sharing!
Aminul Islam Sajib
What exactly does adding those # protect wpconfig.php… to .htaccess file do?
Do I have to do anything else after moving .htacess from public_html to root folder?
Editorial Staff
You will never move the .htaccess file anywhere. That file remains in your public_html folder or the folder where WordPress is installed… The code in that file will disallow all access to wp-config.php file from the web.
You can move the wp-config.php file to the root directory (one above public_html) to add an extra layer of security. One or the other would be fine… doing both is an overkill.
Administrador
Andrew Nacin
For reference, 3.0 does not include more security keys, nor were 2.9 installs any less secure when it came to authentication.
The first four are keys. The last four are salts. The salts were missing from wp-config.php before 3.0, but we actually added salts a few versions ago. We added them to wp-config.php in 3.0 so we could easily populate them on install, but they are not necessary.
If salts are not defined (or remain the default, e.g. “Enter unique phrase here”), then WP simply generates random strings to use as salts and stores those in the database.
Also, for an error log, you should instead use these constants:
define( 'WP_DEBUG', true ); // Enables error reporting.
define( 'WP_DEBUG_DISPLAY', false ); // Hides the errors.
define( 'WP_DEBUG_LOG', true ); // Logs errors to wp-content/error.log (or use @ini_set('error_log') )
This has the added benefit of exposing PHP notices, which provide developers warnings about code that could be better or may have errors in it.
Editorial Staff
Thank You Andrew. Didn’t know about the SALT keys. Just saw it in 3.0 and thought it was a new addition.
Administrador
Adam W. Warner
Very nice write up, and easy read for beginners. I’ll be sending people here to learn;)
Ozh
$_ENV{DATABASE_SERVER} ??
Syntax doesn’t look correct to me ($_ENV[‘stuff’] maybe but {stuff} I don’t think so) and I’ve just checked, couldn’t find any host I have access to that has this defined. Definitely not something common.
Other than this, nice roundup. Note that WP doesn’t look “in other directories” to find wp-config.php, it just goes one directory up (which is in most case out of the server document root).
gopalb
Thanks…. it’s really good tutorial…Can you write the detail step by step tutorial of “Securing Your WP-Config File” for us…
Editorial Staff
The last two steps are pretty easy to follow, but sure will add that one to the list
Administrador
Carlos
Great article as always. I especially like the .htaccess file tip.
DaveK
Wow plenty there to get my teeth into, thanks WPB
Angie Bowen
Thanks so much for all of this great info. This is the side of WordPress I need to learn more about so I’m going to use this post as a springboard to really dive in.