Tất cả những điều bạn cần biết về wp-config.php

Rate this post

File wp-config.php là thành phần quan trọng bật nhất của WordPress website cũng như hệ thống bảo mật của nó. Để quản lý file này, bạn cần có một số kiến thức nhất định. Sau khi đọc xong bài viết này, bạn có thể cấu hình được WordPress và biết cách tận dụng các lợi ích của file wp-config.

File wp-config.php là gì?

Đầu tiên và cũng quan trọng nhất, bạn cần biết wp-config.php là gì. File này chứa thông tin cấu hình WordPress và quan trọng nhất là, thông tin kết nối database của website. Các thông tin này bao gồm: database name, username, password và database host.

File wp-config.php không có sẵn trong WordPress mà nó được tạo ra trong quá trình cài đặt WordPress. Nó là file riêng của website.

Giờ chắc bạn đang muốn biết wp-config.php ở đâu? Vị trí file này đặt trong thư mục gốc của website. Thông thường và trong ví dụ này nó đặt trong /public_html.

wp-config.php ở đâu

Để chỉnh sửa file wp-config.php, bạn có thể sử dụng FTP (ví dụ, FileZilla), hoặc nếu bạn đang dùng Hostinger, sử dụng File Manager sẽ dễ hơn. Bước tiếp theo là tải file này về.

Quan trọng: Chỉnh sửa file wp-config.php khi cần thiết và đừng quên lưu lại một bản sao của file này. Nếu chỉnh không đúng có thể gây lỗi nghiêm trọng.

Khi bạn mở file wp-config.php lên, trong thư mục gốc cài đặt WordPress, bạn sẽ thấy đoạn code như sau:

<?php /** * The base configuration for WordPress * * The wp-config.php creation script uses this file during the * installation. You don't have to use the web site, you can * copy this file to "wp-config.php" and fill in the values. * * This file contains the following configurations: * * * MySQL settings * * Secret keys * * Database table prefix * * ABSPATH * * @link https://codex.wordpress.org/Editing_wp-config.php * * @package WordPress */  // ** MySQL settings - You can get this info from your web host ** //  /** The name of the database for WordPress */ define('DB_NAME', 'database_name_here');  /** MySQL database username */ define('DB_USER', 'username_here');  /** MySQL database password */ define('DB_PASSWORD', 'password_here');  /** MySQL hostname */ define('DB_HOST', 'localhost');  /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8');  /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', '');  /**#@+ * Authentication Unique Keys and Salts. * * Change these to different unique phrases! * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. * * @since 2.6.0 */ 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');  /**#@-*/  /** * WordPress Database Table prefix. * * You can have multiple installations in one database if you give each * a unique prefix. Only numbers, letters, and underscores please! */ $table_prefix  = 'wp_';  /** * For developers: WordPress debugging mode. * * Change this to true to enable the display of notices during development. * It is strongly recommended that plugin and theme developers use WP_DEBUG * in their development environments. * * For information on other constants that can be used for debugging, * visit the Codex. * * @link https://codex.wordpress.org/Debugging_in_WordPress */ define('WP_DEBUG', false);  /* That's all, stop editing! Happy blogging. */ /** Absolute path to the WordPress directory. */ if ( !defined('ABSPATH') )    define('ABSPATH', dirname(__FILE__) . '/');  /** Sets up WordPress vars and included files. */ require_once(ABSPATH . 'wp-settings.php');

Thông tin kết nối MySQL database trong wp-config.php

Thông tin cấu hình database được viết bên dưới mục MySQL settings trong file wp-config.php, chứa các thông tin bao gồm: MySQL hostname, database name, username, và password. Bạn có thể đổi những thông tin này khi bạn di chuyển website sang nhà cung cấp khác và cần cập nhật database MySQL. Đây là snippet của nó:

// ** MySQL settings - You can get this info from your web host ** //  /** The name of the database for WordPress */ define( 'DB_NAME', 'database_name_here' );  /** MySQL database username */ define( 'DB_USER', 'username_here' );  /** MySQL database password */ define( 'DB_PASSWORD', 'password_here' );  /** MySQL hostname */ define( 'DB_HOST', 'localhost' );

Để lấy các thông tin này, bạn có thể tìm thấy trong control panel của web hosting. Chỉ cần đăng nhập tài khoản của bạn, nhấn vào nút Database, và chọn MySQL database. Nó sẽ trông như sau trong control panel của Hostinger:

thông tin kết nối database trong control panel

Ngoài việc cấu hình database, bạn còn làm được nhiều việc khác bằng file wp-config để tùy chỉnh website của bạn. Bạn có thể tạo ra Authentication Key và Salts, đổi table prefix, kích hoạt mode debugging, và chuyển file tới vị trí khác để an toàn hơn. Chúng tôi sẽ đi qua từng cách một.

Security keys

File wp-config.php quan trọng vì nó tạo ra Authentication Keys và Salts bên trong. Những thông tin này sẽ giúp bảo vệ website của bạn vì nó mã hóa thông tin người dùng.

Để tạo Authentication keys và Salts, bạn cần tạo một loạt các mật khẩu mạnh trước. Bạn có thể tạo một loạt mật khẩu mạnh bằng the WordPress password generator. Sau khi có danh sách các mật khẩu, dán từng cái một vào bên trong file để thay thế chỗ ‘điền mật khẩu vào đây’.

/**#@+ * Authentication Unique Keys and Salts. * * Change these to different unique phrases! * You can generate these using the {@link https://api.wordpress.org/secret-key/1.1/salt/ WordPress.org secret-key service} * You can change these at any point in time to invalidate all existing cookies. This will force all users to have to log in again. * * @since 2.6.0 */ define('AUTH_KEY',         'điền mật khẩu vào đây'); define('SECURE_AUTH_KEY',  'điền mật khẩu vào đây'); define('LOGGED_IN_KEY',    'điền mật khẩu vào đây'); define('NONCE_KEY',        'điền mật khẩu vào đây'); define('AUTH_SALT',        'điền mật khẩu vào đây'); define('SECURE_AUTH_SALT', 'điền mật khẩu vào đây'); define('LOGGED_IN_SALT',   'điền mật khẩu vào đây'); define('NONCE_SALT',       'điền mật khẩu vào đây');  /**#@-*/

Hiệu quả của phương pháp này rất mạnh, nó sẽ thoát toàn bộ người dùng đang đăng nhập ra và khiến cho những cookies hiện thành không dùng được nữa. Cách này, hackers có được mật khẩu của bạn sẽ tự động bị thoát ra.

Database Table Prefix

WordPress mặc định đặt tên cho bảng với prefix là ‘wp_’ trong file wp-config.php, nên bạn có thể tăng tính bảo mật bằng cách sửa nó thành tên khác. Thông tin ban đầu là:

$table_prefix  = 'wp_';

Bạn đổi thông tin prefix trong quá trình cài đặt để an toàn hơn. Thay thế prefix mặc định bằng một cái tên khác để hạn chế trường hợp tấn công bằng SQL injection.

Đổi wp prefix với một ký tự nào đó là được. Lưu ý bạn chỉ dùng được gạch dưới, chữ, số. Ví dụ như sau:

$table_prefix  = 'wp_custom751Admin_';

Hãy tạo một prefix phức tạp là tốt nhất. Còn không thì nếu tạo một prefix quá dễ đoán sẽ không có tác dụng gì.

Debugging Mode

Mặc định, chế độ debugging sẽ bị tắt. Bật nó lên nếu bạn thích tìm hiểu về quá trình phát triển WordPress.

Debugging mode dùng để thông báo cho lập trinh viên biết sau khi code được thực thi. Nó sẽ giúp tìm lỗi trên website. Chức năng này thực tế cũng rất hữu dụng cho người dùng bình thường, có thể giúp họ sửa các lỗi cơ bản.

Để bật debugging mode lên, bạn chỉ cần tìm dòng sau, thay thế giá trị thành True ở chỗ False là được:

define('WP_DEBUG', false);

Wp-config ở đâu và cách thay đổi vị trí file wp-config.php

Vị trí ban đầu của file wp-config.php là ở thư mục gốc cài đặt WordPress, thông thường là trong thư mục public_html. Thay đổi vị trí file wp-config.php có thể gây nguy hiểm cho website, nên hãy nhớ backup website lại trước. Việc thay đổi vị trí file wp-config.php là cách rất hữu hiệu giúp chống hacker tìm thấy nó dễ dàng. Một bước bảo mật vô cùng hiệu quả.

Đổi thay đổi đường dẫn wp-config.php, mở FTP client lên (hoặc dùng Hostinger File Manager) và làm theo hướng dẫn sau:

  1. Tìm wp-config.php trong thư mục gốc cài đặt của website.
  2. Chuyển file wp-config.php đến nơi khác bằng cách kéo thả đến thư mục bạn muốn. ee to another place by drag-and-dropping it to your intended directory. Vị trí càng bất thường bao nhiêu càng tốt bất nhiêu. Trong file này, chúng tôi đặt nó trong mục /public_html/wp-admin/user
    đổi vị trí file wp-config.php
  3. Sau đó, website sẽ không truy cập được nữa vì nó không tìm thấy file wp-config ở vị trí cũ nữa. Bạn sẽ cần tạo một file wp-config.php mới trên text editor trong máy của bạn (notepad chẳng hạn), với nội dung như sau:
    <?php include(‘/domains/hostinger-dev-9.xyz/public_html/wp-admin/user’); ?>

    Lưu ý là bạn cần sửa đường dẫn file wp-config.php ở ví dụ trên thành nên chính xác bạn lưu file wp-config.php.

  4. Upload file mới này lên thư mục gốc của bạn, nơi file wp-config.php cũ được đặt. Ghi đè lên nếu file cũ wp-config.php vẫn còn ở đó.
  5. Vậy là xong. Bạn đã cấu hình WordPress an toàn hơn chỉ bằng một thao tác đơn giản.

Lời kết

Bạn đã biết wp-config.php quan trọng đến mức nào với WordPress. Nó chứa những thông tin cực kỳ nhạy cảm, nên bạn cần giữ nó tránh xa những ai có ý định xấu. Có nhiều cách để giúp bạn làm việc này, nhưng hãy nhớ  vô cùng cẩn trọng khi điều chỉnh file wp-config. Nếu không bạn sẽ không truy cập được vào WordPress website nữa hoặc làm hỏng website.

 

0973.393.165