דילוג לתוכן
תצורה

קובץ wp-config.php בוורדפרס: מה הוא עושה ואיך לערוך אותו

קובץ wp-config.php שומר את פרטי מסד הנתונים, מפתחות האבטחה והגדרות האתר בוורדפרס. כאן תראו איפה הוא נמצא, מה עושה כל חלק ואיך לערוך אותו בבטחה.

פורסם

wp-config.php הוא הקובץ שאומר לוורדפרס איך להתחבר למסד הנתונים שלה ואיך לפעול. בדרך כלל הוא נמצא בתיקיית השורש של ההתקנה, ליד wp-admin ו-wp-content. אפשר להוסיף או לשנות הגדרות בבטחה מעל השורה “That’s all, stop editing!” (“זה הכול, הפסיקו לערוך!”), ואת שני קטעי הקוד שמתחתיה כדאי להשאיר כמו שהם. שמרו גיבוי לפני העריכה, כי שגיאת הקלדה אחת יכולה להפיל את כל האתר.

עיקרי הדברים

  • הקובץ שומר את סיסמת מסד הנתונים ואת מפתחות האבטחה, אז התייחסו אליו כמו לסיסמה ולעולם אל תפרסמו את התוכן שלו בפורום או בצ’אט תמיכה.
  • הגדרות מותאמות אישית נכנסות מעל שורת “stop editing”. השורה האחרונה שמתחתיה טוענת את וורדפרס, והגדרה שאחריה מגיעה מאוחר מדי.
  • חבילת ההורדה של וורדפרס כוללת את wp-config-sample.php. הקובץ האמיתי wp-config.php נוצר בזמן ההתקנה.
  • אל תשנו את $table_prefix באתר פעיל על ידי עריכת השורה הזו בלבד. וורדפרס תתנהג כאילו היא לא מותקנת.

איפה למצוא את wp-config.php

התחברו דרך SFTP או פתחו את מנהל הקבצים של חברת האחסון, ואז עברו לתיקייה שמכילה את wp-admin, wp-includes ו-wp-content. התיעוד של וורדפרס קורא לה השורש של ספריית הקבצים של וורדפרס.

אם הקובץ לא שם, חפשו תיקייה אחת למעלה. טוען הקבצים של וורדפרס בודק קודם את תיקיית ההתקנה ואז את תיקיית האב, והוא מדלג על תיקיית האב אם יש בה wp-settings.php משלה, כי זה אומר שיושבת שם התקנת וורדפרס אחרת.

אם הקובץ לא נמצא באף אחד מהמקומות, וורדפרס שולחת את המבקרים למסך ההתקנה. המסך הזה בונה את הקובץ מתוך wp-config-sample.php. כשהוא לא יכול לכתוב לתיקייה, הוא מציג את הטקסט להדבקה ידנית בקובץ חדש.

מה עושה כל חלק ברירת מחדל

wp-config-sample.php הוא התבנית, ואלה החלקים שלה לפי הסדר:

חלקמה הוא שומראפשר לשנות?
DB_NAME, DB_USER, DB_PASSWORD, DB_HOSTפרטי ההתחברות למסד הנתונים. בדוגמה השרת הוא localhost, וחברת האחסון יכולה לתת לכם את הערכים האמיתיים.כן, כשפרטי מסד הנתונים משתנים. ערך שגוי גורם לשגיאה בחיבור למסד הנתונים.
DB_CHARSET, DB_COLLATEאיך טקסט נשמר במסד הנתונים. ברירות המחדל הן utf8mb4 וערך ריק.ההערה בקובץ הדוגמה על DB_COLLATE אומרת לא לשנות אותו אם יש ספק.
AUTH_KEY עד NONCE_SALTשמונה מפתחות אבטחה ומלחים שמשמשים לעוגיות התחברות.כן. שינוי שלהם מנתק את כל המשתמשים.
$table_prefixהטקסט בתחילת שם כל טבלה במסד הנתונים, wp_ כברירת מחדל.רק בזמן ההתקנה, אלא אם משנים גם את שמות הטבלאות ומעדכנים רשומות שמורות במסד הנתונים ששמותיהן כוללים את הקידומת.
WP_DEBUGמצב ניפוי שגיאות, מוגדר ל-false בקובץ הדוגמה.כן. המדריך למיקום יומן הדיבוג מסביר איך לשלוח שגיאות לקובץ.
ההערה “custom values” (“ערכים מותאמים אישית”)מקום ריק להגדרות שלכם, שמסתיים בשורת “stop editing”.כן, לכאן נכנסות התוספות שלכם.
ABSPATH והשורה של wp-settings.phpהנתיב לוורדפרס, ואחריו השורה שטוענת את כל השאר.לא. השאירו אותן כמו שהן.

מפתחות חדשים נמצאים במרחק קליק: שירות המפתחות הסודיים של WordPress.org נותן סט חדש בכל טעינה. החליפו את כל שמונה השורות בסט החדש.

בקבצים ישנים ייתכן שאין את ההערה “custom values”, וכתוב בהם “Happy blogging” במקום “Happy publishing”. שתי הגרסאות עובדות, והכלל לא משתנה: הוסיפו את ההגדרות שלכם מעל השורה הזו.

הגדרות שאנשים משנים לעיתים קרובות

כל אחת מאלה היא שורה אחת. כולן מגיעות מהתיעוד של wp-config.php, וברירות המחדל מגיעות מהקובץ default-constants.php של וורדפרס.

// Memory for the front end, then for wp-admin
define( 'WP_MEMORY_LIMIT', '256M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

// Keep at most 3 revisions per post (false turns revisions off)
define( 'WP_POST_REVISIONS', 3 );

// Autosave every 180 seconds
define( 'AUTOSAVE_INTERVAL', 180 );

// Empty the trash after 7 days
define( 'EMPTY_TRASH_DAYS', 7 );

// Remove the theme and plugin file editor from wp-admin
define( 'DISALLOW_FILE_EDIT', true );

// Force HTTPS for logins and wp-admin
define( 'FORCE_SSL_ADMIN', true );

// Set the site addresses here
define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );

העתיקו רק את השורות שאתם צריכים. בכמה מהן יש פרטים שכדאי להכיר:

  • זיכרון: ברירת המחדל של וורדפרס היא 40M, או 64M ברשת מרובת אתרים, ו-256M עבור wp-admin אלא אם PHP כבר מאפשר יותר. אם חברת האחסון לא מאפשרת לשנות את המגבלה, וורדפרס משתמשת במגבלה שכבר קיימת ב-PHP. המדריך לשגיאת זיכרון שאזל מסביר מה לעשות כשזה קורה.
  • גרסאות: הן פעילות כברירת מחדל. הגדירו false כדי לכבות אותן, או מספר כדי להגביל אותן.
  • שמירה אוטומטית ופח אשפה: ברירות המחדל הן 60 שניות ו-30 יום. הגדרת EMPTY_TRASH_DAYS ל-0 מכבה את פח האשפה, והתיעוד מזהיר שאז וורדפרס לא תבקש אישור כשמישהו לוחץ על “Delete Permanently” (“מחיקה לצמיתות”).
  • עורך הקבצים: מדריך ההקשחה אומר שזה לא יעצור תוקף מלהעלות קבצים זדוניים, אם כי ייתכן שזה יעצור חלק מההתקפות. DISALLOW_FILE_MODS הולך רחוק יותר וחוסם גם התקנה ועדכון של תוספים ותבניות.
  • HTTPS: כשההגדרה “כתובת וורדפרס” כבר מתחילה ב-https, וורדפרס מגדירה את FORCE_SSL_ADMIN ל-true בעצמה. השורה הזו משנה משהו רק כשהכתובת לא מתחילה ב-https.
  • כתובות האתר: הן גוברות על הערכים השמורים בלי לשנות את מה שנשמר במסד הנתונים. כללו את החלק https://.

הגדרה אחת דורשת יותר תכנון. define( 'DISABLE_WP_CRON', true ); מונע מביקורים בדפים להפעיל משימות מתוזמנות, אז הגדירו משימת cron בשרת עבור wp-cron.php לפני שאתם מפעילים אותה, אחרת פוסטים מתוזמנים ומשימות מתוזמנות אחרות לא ירוצו.

איך לערוך את wp-config.php בבטחה

  1. הורידו קודם עותק. שמרו אותו במחשב שלכם. עותק שנשאר בשרת בשם כמו wp-config.php.bak עלול להיות קריא בדפדפן, כי השרת כבר לא מתייחס אליו כאל PHP.
  2. פתחו את הקובץ בעורך טקסט פשוט. מדריך העריכה של וורדפרס מציין את Notepad++, Sublime Text ו-Visual Studio Code כמתאימים, ומזהיר מפני Google Docs ו-Microsoft Word, כי מעבדי תמלילים משנים מירכאות ויכולים להוסיף קוד ששובר קבצים.
  3. מצאו את שורת “stop editing” והוסיפו את השורות החדשות ישירות מעליה. אם ההגדרה כבר מוגדרת למעלה יותר, שנו את השורה הקיימת.
  4. שמרו והעלו, ואז טענו את האתר בחלון גלישה פרטית, יחד עם דף אחד ב-wp-admin.
  5. אם משהו נשבר, החזירו את העותק. זה מבטל את העריכה גם כש-wp-admin לא נטען.

העברת הקובץ אל מעל שורש האתר

מדריך ההקשחה אומר שאפשר לשמור את wp-config.php תיקייה אחת מעל התקנת וורדפרס, וקוד הטעינה מטפל בזה בלי הגדרות נוספות. העבירו את הקובץ, ואז בדקו שהאתר עדיין נטען. להעברה יש שתי מגבלות:

  • בתיקיית האב לא יכולה להיות התקנת וורדפרס נוספת. הטוען מתעלם מתיקיית אב שיש בה wp-settings.php משלה.
  • רמה אחת למעלה היא פרטית רק אם וורדפרס יושבת בשורש האתר. אם וורדפרס נמצאת בתיקיית משנה כמו /blog/, רמה אחת למעלה בדרך כלל עדיין ציבורית.

אותו מדריך אומר שיש הטוענים שלהעברה יש יתרונות אבטחה מינימליים, ושהיא עלולה ליצור פרצות חמורות אם עושים אותה ברשלנות. לכן התייחסו אליה כאל אפשרות בלבד. ב-Apache, המדריך נותן גם את הבלוק הבא לראש קובץ .htaccess, שחוסם בקשות ישירות לקובץ:

<Files "wp-config.php">
Require all denied
</Files>

מדריך האבטחה שלנו ל-.htaccess מסביר את הכלל הזה לצד כללים אחרים.

הרשאות קבצים ל-wp-config.php

התיעוד של וורדפרס נותן מספרים מעט שונים, לפי המצב:

  • מדריך ההקשחה אומר שרק אתם ושרת האינטרנט צריכים להיות מסוגלים לקרוא את הקובץ, ולדבריו זה בדרך כלל אומר 400 או 440.
  • מדריך הרשאות הקבצים אומר 440 או 400 באחסון משותף עם suexec, כדי למנוע ממשתמשים אחרים בשרת לקרוא אותו. הוא גם מציג 600 כדוגמה מאובטחת.
  • עבור קובצי וורדפרס רגילים, אותו מדריך אומר 644 או 640.

המספר שיעבוד תלוי במשתמש המערכת שבו רץ שרת האינטרנט. השרת חייב להיות מסוגל לקרוא את הקובץ, אז אם האתר מפסיק להיטען אחרי שינוי, חזרו לערך הקודם ושאלו את חברת האחסון איזה ערך מתאים להגדרות שלה.

טעויות נפוצות

  • הדבקת הגדרה אחרי שורת wp-settings.php. השורה הזו טוענת את וורדפרס וקובעת את ברירות המחדל שלה. קבוע ב-PHP לא יכול להשתנות במהלך ריצת הסקריפט, ולכן לשורה שלכם אין השפעה.
  • הגדרת אותה הגדרה פעמיים. השורה הראשונה קובעת את הערך והשנייה לא יכולה לשנות אותו. לפי המדריך של PHP, הצהרה חוזרת על קבוע מוגדרת כמיושנת החל מ-PHP 8.5, ולכן היא עלולה גם להציג הודעה. חפשו את השם בקובץ לפני שאתם מוסיפים אותו.
  • מירכאות סביב true או false. 'false' היא מחרוזת לא ריקה, ו-PHP מתייחס אליה כאל true. כתבו false בלי מירכאות. גדלים כמו '256M' כן צריכים אותן.
  • מירכאות מעוגלות ממעבד תמלילים או מדף אינטרנט. PHP צריך מירכאות ישרות, ומירכאות מעוגלות גורמות לשגיאה שמונעת מהאתר להיטען.
  • הצגת שגיאות דיבוג באתר פעיל. ברירת המחדל של WP_DEBUG_DISPLAY היא true, כך שאם מפעילים רק את WP_DEBUG, השגיאות מופיעות בדף לעיני המבקרים. המדריך למיקום יומן הדיבוג מראה איך לשלוח אותן לקובץ.
  • השארת WP_ALLOW_REPAIR פעיל. התיעוד אומר להפעיל אותו רק כשצריך ולכבות אותו אחרי שהבעיה נפתרה.

שאלות נפוצות

מהו wp-config.php בוורדפרס? זה קובץ התצורה שוורדפרס טוענת בהפעלה. הוא שומר את פרטי ההתחברות למסד הנתונים, את מפתחות האבטחה ואת קידומת הטבלאות, ובו מוסיפים הגדרות כמו WP_DEBUG או WP_MEMORY_LIMIT.

איפה נמצא הקובץ wp-config.php? בדרך כלל בתיקיית השורש של התקנת וורדפרס, התיקייה שמכילה גם את wp-admin, wp-includes ו-wp-content. וורדפרס מקבלת אותו גם תיקייה אחת מעל ההתקנה, כל עוד אין באותה תיקייה wp-settings.php.

איפה מוסיפים קוד ב-wp-config.php? מעל השורה That’s all, stop editing! Happy publishing. (“זה הכול, הפסיקו לערוך! פרסום מהנה”). בקבצים ישנים כתוב Happy blogging. השורה האחרונה שמתחתיה טוענת את וורדפרס, ולכן הגדרה שמוצבת אחרי אותה שורה מגיעה מאוחר מדי.

האם בטוח לערוך את wp-config.php? כן, אם שומרים גיבוי ומשתמשים בעורך טקסט פשוט. שגיאת הקלדה אחת עלולה למנוע מכל האתר להיטען, כולל wp-admin, ולכן הורידו קודם עותק. אם האתר נשבר אחרי העריכה, החזירו את העותק.

מה קורה אם מוחקים את wp-config.php? וורדפרס כבר לא מוצאת את פרטי ההתחברות למסד הנתונים ומתחילה את תהליך ההתקנה, עם בקשה ליצור קובץ תצורה. התוכן נשאר במסד הנתונים, כך ששחזור הגיבוי או יצירת הקובץ מחדש עם אותם פרטים מחברים את האתר בחזרה.

אילו הרשאות צריכות להיות ל-wp-config.php? מדריך ההקשחה של וורדפרס אומר שרק אתם ושרת האינטרנט צריכים להיות מסוגלים לקרוא אותו, ובדרך כלל זה אומר 400 או 440. מדריך הרשאות הקבצים שלה מציג גם 600. שרת האינטרנט עדיין חייב לקרוא את הקובץ, אז אם האתר מפסיק להיטען, בדקו מול חברת האחסון.

מקורות


בנו את ההגדרות שאתם צריכים בלי להקליד אותן ידנית, כולל מפתחות אבטחה חדשים, בעזרת מחולל wp-config.php החינמי.

FAQ

שאלות

מהו wp-config.php בוורדפרס?

זה קובץ התצורה שוורדפרס טוענת בהפעלה. הוא שומר את פרטי ההתחברות למסד הנתונים, את מפתחות האבטחה ואת קידומת הטבלאות, ובו מוסיפים הגדרות כמו WP_DEBUG או WP_MEMORY_LIMIT.

איפה נמצא הקובץ wp-config.php?

בדרך כלל בתיקיית השורש של התקנת וורדפרס, התיקייה שמכילה גם את wp-admin, wp-includes ו-wp-content. וורדפרס מקבלת אותו גם תיקייה אחת מעל ההתקנה, כל עוד אין באותה תיקייה wp-settings.php.

איפה מוסיפים קוד ב-wp-config.php?

מעל השורה That's all, stop editing! Happy publishing. ("זה הכול, הפסיקו לערוך! פרסום מהנה"). בקבצים ישנים כתוב Happy blogging. השורה האחרונה שמתחתיה טוענת את וורדפרס, ולכן הגדרה שמוצבת אחרי אותה שורה מגיעה מאוחר מדי.

האם בטוח לערוך את wp-config.php?

כן, אם שומרים גיבוי ומשתמשים בעורך טקסט פשוט. שגיאת הקלדה אחת עלולה למנוע מכל האתר להיטען, כולל wp-admin, ולכן הורידו קודם עותק. אם האתר נשבר אחרי העריכה, החזירו את העותק.

מה קורה אם מוחקים את wp-config.php?

וורדפרס כבר לא מוצאת את פרטי ההתחברות למסד הנתונים ומתחילה את תהליך ההתקנה, עם בקשה ליצור קובץ תצורה. התוכן נשאר במסד הנתונים, כך ששחזור הגיבוי או יצירת הקובץ מחדש עם אותם פרטים מחברים את האתר בחזרה.

אילו הרשאות צריכות להיות ל-wp-config.php?

מדריך ההקשחה של וורדפרס אומר שרק אתם ושרת האינטרנט צריכים להיות מסוגלים לקרוא אותו, ובדרך כלל זה אומר 400 או 440. מדריך הרשאות הקבצים שלה מציג גם 600. שרת האינטרנט עדיין חייב לקרוא את הקובץ, אז אם האתר מפסיק להיטען, בדקו מול חברת האחסון.