Tìm hiểu các thông số cơ bản của file wp-config.php trong WordPress

File wp-config.php là một file quan trọng của WordPress, nó chứa các thông tin để kết nối tới CSDL, các key để tăng tính bảo mật cho website cũng như nhiều tính năng khác. Chúng ta sẽ cùng tìm hiểu về những thông số cơ bản nhất của file này, từ đó làm chủ hơn trong quá trình điều khiển WordPress.

WordPress sẽ tự động tạo ra file wp-config.php trong quá trình cài đặt (nằm trong thư mục gốc của web). Nếu quá trình cài đặt bị lỗi về quyền truy cập khiến WordPress không thể tạo ra file này, bạn có thể tự tạo ra file wp-config.php bằng cách copy nội dung từ file wp-config-sample.php cũng nằm trong thư mục gốc của web.

1. Các thông số liên quan tới CSDL

Có 4 thông số cực kỳ quan trọng liên quan đến việc kết nối tới CSDL trong WordPress. Lúc này hay lúc khác, nhất là các lúc chuyển hosting, chắc chắn bạn sẽ cần chỉnh sửa các thông số này.

PHP Code:
1
2
3
4
5
6
7
8
9
10
11
/** 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');

– DB_NAME: Tên CSDL MySQL để lưu trữ website. Thường mỗi website sẽ lưu vào một CSDL riêng. Tuy nhiên với các Shared Host có giới hạn số CSDL thì có thể nhiều website sẽ lưu chung vào một CSDL, lúc này các bảng của các website khác nhau sẽ khác nhau phần tiền tố.
– DB_USER: Tên người dùng của tài khoản CSDL MySQL. Mặc định là root với localhost.
– DB_PASSWORD: Mật khẩu của tài khoản CSDL MySQL. Mặc định là để trống với localhost hoặc là “vertrigo” nếu bạn sử dụng VertrigoServ.
– DB_HOST: Địa chỉ máy chủ CSDL MySQL. Thường là localhost với cả máy chủ ảo lẫn máy chủ thật. Với tài khoản host thật, NCC dịch vụ hosting sẽ cung cấp cho bạn các thông số này.

Các thông số DB_NAME, DB_USER và DB_PASSWORD bạn phải tự tạo trong phpMyAdmin trên localhost hoặc host thật. Nói chung những ai làm việc với WordPress đều biết các thông số này.

Một thông số nữa liên quan tới CSDL đó là table_prefix, gọi là tiền tố của các bảng trong CSDL. Bạn nên đổi giá trị của thông số này thay vì để mặc định là “wp_”

PHP Code:
1
$table_prefix  = 'wp_';

Có 2 lý do để bạn đổi thông số này. Thứ nhất, như đã nói ở trên, nếu bạn cài đặt nhiều website WordPress lên một CSDL, để phân biệt được các bảng của website này với website kia, mỗi website bắt buộc phải có các tiền tố riêng, ví dụ “wp1_” và “wp2_”. Thứ hai, để tăng tính bảo mật, bạn cũng nên đặt các tiền tố này khó đoán một chút, để tránh các quá trình càn quét tự động từ các bot của các hacker. Nghe có vẻ nguy hiểm!

2. Các thông số liên quan đến bảo mật

Từ bản 2.6, 4 (8) mã bảo mật đã được thêm vào để WordPress an toàn hơn.

PHP Code:
1
2
3
4
5
6
7
8
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');

Những key này dùng để mã hóa và giải mã các dữ liệu về người dùng như tên đăng nhập, mật khẩu và các dữ liệu khác được lưu trong cookies của thiết bị. Đúng như nguyên lý bảo mật, nếu chẳng may các dữ liệu này bị đọc trái phép bởi người ngoài hoặc phần mềm khác, thì các phần mềm này phải biết key mới đọc được, nói cách khác, dữ liệu sẽ bảo mật hơn nhiều. Xác suất để “phá khóa” gần như bằng 0!

Đây là các dãy số ngẫu nhiên dài dằng dặc được lưu trong file wp-config.php mà khi mới xây dựng website bạn nên tạo ra, mục đích là càng mới càng lạ thì càng làm khó quá trình đọc trộm dữ liệu từ bên ngoài. Làm sao để tạo ra các khóa bảo mật này? Đơn giản, hãy sử dụng ngay công cụ của chính WordPress!

Bạn chỉ việc truy cập vào địa chỉ https://api.wordpress.org/secret-key/1.1/salt/ và copy các dòng này chép vào file wp-config.php là được:

PHP Code:
1
2
3
4
5
define('AUTH_KEY',         '-$Bav;^!9v, lA6HC$h0P6+Lv|&D^=-~VUFwR-d^=yC!R%.oA@D|w,aoV8KL?!qM');
define('SECURE_AUTH_KEY',  'fn! YC%?0v)KC,+ai@+X+T*Q-B9T48sideZHe$$Fv&/2p_3+D0GSnYcDL=S<VCe6');
define('LOGGED_IN_KEY',    '$J:){J-U..+rqayw_._xV}(910WZ`q6NB7N | sYMd8mmr-9fLl%Il;lcu@ld5c<');
define('NONCE_KEY',        'US1-[zLYWUJF1fs[<2(y}tZ:U|ZN|Y$9G$1nj(e_Gu?@S%|Yh4r$3RG3uB-YJFVQ'); define('AUTH_SALT', 'I Pnr?OX5/][inO?q3Z[B1FI`IVUH4.:;MhEUj%m#K|SI7?KAy*jYzhjGb4i{Jy]'); define('SECURE_AUTH_SALT', '>-|CQ]w>Ui oE+-StovEE|1 #,{z*ZFi<~7,09q7JqM0ShP!9k(/,#}K7~3;l~`K'); define('LOGGED_IN_SALT', 'nX2QGZLz#E+yD-K/p@;Cf|T%c|^E~bGIr,i>0*${zd)>6Ruv|z+#JwdD|&zwKb<s');
define('NONCE_SALT',       'Y,dnH%v~)#%a@wB;<F]}{w3<]>}S_w]y.3K+F}$+#GDW(=}0+}Fxx8BTVet.d+XD');

3. Bật chế độ gỡ lỗi trong WordPress

Khi vận hàng trang web bằng mã nguồn WordPress, kiểu gì cũng có lúc trang web gặp lỗi, nhất là lỗi trắng trang kinh điển và kinh hoàng thường xảy ra khi cập nhật Plugin bị lỗi hoặc khi bạn vô tình tạo ra lỗi khi gõ các lệnh PHP. Trong tình huống này, tốt nhất bạn nên bật chế độ gỡ lỗi trong WordPress để dễ tìm ra xem lỗi nằm ở đâu để tìm biện pháp khắc phục.

Mặc định, chế độ này bị tắt đi, bạn phải bật lên bằng cách sửa từ define('WP_DEBUG', false); thành define('WP_DEBUG', true);

PHP Code:
1
define('WP_DEBUG', true);

Khi đã sửa hết lỗi, bạn nên tắt chế độ này đi nhằm tránh những cảnh báo không cần thiết với khách truy cập.

PHP Code:
1
2
3
4
define('WP_DEBUG', false);
define('WP_DEBUG_DISPLAY', false);
ini_set('display_errors', 'Off');
ini_set('error_reporting', E_ALL );

4. Tắt chức năng Revisions

Chức năng này sẽ tự động lưu lại các bản nháp khác nhau để bạn có thể phục hồi sau này. Nếu bạn không cần chức năng này thì có thể tắt nó đi để tiết kiệm cơ sở dữ liệu.

Phiên bản tự động lưu - WP_POST_REVISIONS

Phiên bản tự động lưu – WP_POST_REVISIONS

Thêm vào hoặc sửa thông số WP_POST_REVISIONS thành false:

PHP Code:
1
define('WP_POST_REVISIONS', false );

Nếu bạn không muốn tắt mà chỉ muốn giới hạn số bản nháp thì chỉnh sửa thành:

PHP Code:
1
define('WP_POST_REVISIONS', 3 );

Để thay đổi thời gian tự động lưu nháp bài viết, bạn tìm và sửa:

PHP Code:
1
define('AUTOSAVE_INTERVAL', 60 ); // Sau moi 60 giay se luu mot lan

5. Bật chế độ sửa chữa CSDL trong WordPress

Nếu vì một lý do nào đó mà CSDL của bạn bị lỗi dẫn đến việc trang web không thể hoạt động, bạn nên tiến hành bật chế độ sửa chữa CSDL có sẵn trong WordPress:

PHP Code:
1
define('WP_ALLOW_REPAIR', true);

Tuy nhiên như thế là chưa đủ, bạn nên đọc thêm bài viết này để biết cách sửa chữa tiếp sau đó sẽ như thế nào: Sửa lỗi kết nối tới cơ sở dữ liệu trong WordPress

Tham khảo, một số từ khóa để tìm kiếm:

WordPress Salt Generator
Securing WordPress using Security Keys and Salts
Revisions – WordPress Codex
Những việc bạn có thể làm với file wp-config của WordPress
– wp-config.php, WP_DEBUG, WP_ALLOW_REPAIR, WP_POST_REVISIONS,…

Trên đây là một số thông số cơ bản nhất của file wp-config.php mà bạn nên biết. Việc hiểu rõ các thông số này là điều cần thiết nếu bạn muốn làm chủ mã nguồn các trang web làm bằng WordPress. Chúc các bạn thành công!

Cheers,

The following two tabs change content below.
Tôi là kỹ sư Cơ khí, kỹ sư CNTT trường ĐH Bách Khoa Hà Nội. Tôi hoạt động trong lĩnh vực CNTT, bao gồm Software Development, Web Design, Web Development, Interactive Multimedia and Mobile App, Mobile Game Development. Tôi rất yêu công nghệ và tôi lập ra trang web này để chia sẻ kiến thức về công nghệ với mọi người.

Leave a Reply

Your email address will not be published. Required fields are marked *

*
*
Website