هذا منشور لجميع مطوري وورد بريس هناك! اليوم سنوضح كيفية استخدام ودمج الأساس و تعريشة في Kinsta. إذا لم تكن قد سمعت بهاتين الأداتين من قبل ، فسنقدمهما أيضًا ونأمل أن نوضح سبب رغبتك في استخدامهما عبر الإعداد التقليدي.
جرب نسخة تجريبية مجانية
بيدروك وتعريشة
يوجد كل من Bedrock و Trellis لتسهيل تطوير مواقع وورد بريس وصيانتها ونشرها .
يوفر Bedrock طريقة بديلة لإدارة تثبيت وورد بريس الخاص بك من خلال بنية مجلد محسّنة وأدوات تطوير حديثة وأمان محسّن.
يعمل Trellis مع Bedrock لإنشاء بيئات تطوير باستخدام Vagrant جنبًا إلى جنب مع عمليات النشر ذات الأمر الواحد.
السبب الرئيسي لاستخدام Bedrock هو الحصول على التبعية المناسبة وإدارة الحزم لمشروع وورد بريس. قد تكون بالفعل على دراية بـ npm لـ JavaScript أو Bundler for Ruby. PHP لا يختلف ، وما يعادله هو Composer .
أثناء استخدام مدير الحزم أمر شائع ، فإنه أقل شيوعًا بالنسبة إلى وورد بريس نفسه نظرًا لأن وورد بريس لديه بالفعل مفهومه الخاص عن المكونات الإضافية. يدمج Bedrock Composer لإدارة المكونات الإضافية والسمات وحتى نواة وورد بريس نفسها باعتبارها تبعيات.
Trellis هي أداة لإنشاء خوادم تطوير وإنتاج بسهولة لاستضافة مواقع وورد بريس. تم إنشاؤه خصيصًا للعمل مع المواقع المستندة إلى Bedrock أيضًا. حالة الاستخدام الافتراضية لـ Trellis هي استخدامه للتطوير مع Vagrant وفي الإنتاج أيضًا للحصول على التكافؤ بين هاتين البيئتين.
يوضح هذا المنشور حالة استخدام مختلفة قليلاً: Trellis لخادم التطوير الخاص بك و Kinsta لخادم الإنتاج (و / أو التدريج).
لماذا استخدام Kinsta عبر VPS مزود من Trellis؟ لأنك في بعض الأحيان تريد أن تدفع لشخص آخر لإدارة الخادم بدلاً من القيام بذلك بنفسك (خاصة إذا كان لديك الكثير من العملاء). يعمل Kinsta أيضًا على تسهيل التوسع دون الحاجة إلى التعامل مع خوادم متعددة وموازنات التحميل والتحميلات السحابية.
الكثير من مضيفي وورد بريس ليسوا مناسبين للمطورين ولا يوفرون وصولاً إلى SSH وتكامل Composer أو WP-CLI وهي متطلبات لاستخدام Trellis و Bedrock. لحسن الحظ ، توفر Kinsta وصولاً إلى SSH على جميع خطط الاستضافة الخاصة بهم ، من Starter إلى Enterprise ، مما يجعل كل هذا ممكنًا. يمكنهم أيضًا تعديل مسار الجذر للحصول على الوظائف المناسبة.
توجد Bedrock و Trellis لتسهيل تطوير مواقع وورد بريس وصيانتها ونشرها. 🤓
انقر للتغريد
Bedrock مقابل وورد بريس العادية
قد تتساءل عن سبب استخدامك Bedrock بدلاً من تثبيت وورد بريس التقليدي. والسبب هو أن Bedrock تم تصميمه خصيصًا مع وضع مطور الويب الحديث في الاعتبار :
ملفات التكوين الخاصة بالبيئة ، المخزنة خارج جذر الويب العام
متغيرات البيئة لفصل التكوين عن التعليمات البرمجية في .env ملف واحد
أمان محسّن عن طريق تقييد الوصول إلى الملفات غير المرتبطة بالويب إلى جانب كلمات مرور bcrypt المجزأة
اسم دليل محتوى wp المخصص app
Composer لإدارة وورد بريس والمكونات الإضافية والسمات وتبعيات PHP الأخرى
.gitignore يستثني وورد بريس core والمكونات الإضافية والتحميلات
تثق Raspberry Pi و Snopes و JetBlue والمزيد ، في Bedrock لتشغيل مواقع وورد بريس الخاصة بهم.
دعنا نلقي نظرة على هيكلي المجلد جنبًا إلى جنب:
Bedrock مقابل وورد بريس
Bedrock مقابل وورد بريس
يأخذ Bedrock تثبيت وورد بريس في دليل فرعي إلى المستوى التالي. الكثير من الفلسفة وراء Bedrock مستوحاة من منهجية تطبيق Twelve-Factor بما في ذلك إصدار وورد بريس المحدد .
تكوين التداخل لـ Kinsta
أولاً ، تأكد من إضافة مفاتيح SSH العامة إلى لوحة معلومات MyKinsta .
يمكن نشر Trellis في Kinsta مع بعض التحديثات فقط. نظرًا لأن Kinsta يوفر كل شيء من وجهة نظر خادم الويب ، فإن توفير بيئات التدريج والإنتاج الخاصة بك لا ينطبق.
يتم نشر أمر واحد في عمل Trellis مع Kinsta بتكوين بسيط. بمجرد التهيئة ، ستتمكن من نشر مواقع وورد بريس الخاصة بك عن طريق تشغيل دليل التشغيل في Trellis:
ansible-playbook deploy.yml -e env=staging -e site=example.com --limit=kinsta_staging
قم بإحضار لوحة معلومات MyKinsta الخاصة بك وانتقل إلى موقع وورد بريس الذي تقوم بإعداده باستخدام Bedrock و Trellis ، جنبًا إلى جنب مع محرر الشفرة الذي تم فتحه في trellis الدليل في مشروعك.
قم أولاً بالتحرير trellis/ansible.cfg لإضافة ما يلي إلى [defaults] الجزء العلوي:
forks = 3
host_key_checking = False
تكوين التدريج
تأكد من أنه trellis/group_vars/staging/وورد بريس_sites.yml تم تكوينه بالشكل المناسب canonical لموقع التدريج الخاص بك:
wordpress_sites:
example.com:
site_hosts:
- canonical: staging-example.kinsta.com
ثم افتح trellis/group_vars/staging/main.yml وأضف ما يلي إلى نهاية الملف:
project_root: /www/example_123/public
www_root: /www/example_123/public
web_user: example
web_group: www-data
استبدل المسارين project_rootand www_rootبالمسار الصحيح المتوفر في لوحة معلومات MyKinsta لبيئة التدريج في Kinsta .
ابحث عن الجذر العام الخاص بك في MyKinsta.
ابحث عن الجذر العام الخاص بك في MyKinsta.
بعد ذلك ، افتح trellis/group_vars/staging/vault.yml للتحرير عن طريق التشغيل ansible-vault edit group_vars/staging/vault.yml.
نحن بحاجة إلى إضافة db_user، db_nameو db_password ل env. يمكنك العثور على قيم هذه على شاشة المعلومات الرئيسية لموقعك في لوحة معلومات MyKinsta.
بيانات اعتماد SFTP وقاعدة البيانات في MyKinsta.
بيانات اعتماد SFTP وقاعدة البيانات في MyKinsta.
vault_wordpress_sites:
example.com:
env:
db_user: "example"
db_name: "example"
db_password: "xxxxxxxxxxxxxxx"
# Generate your keys here: https://roots.io/salts.html
auth_key: ""
secure_auth_key: ""
logged_in_key: ""
nonce_key: ""
auth_salt: ""
secure_auth_salt: ""
logged_in_salt: ""
nonce_salt: ""
أخيرًا ، افتح trellis/hosts/staging واستبدل المحتويات بـ:
kinsta_staging ansible_host=104.154.94.123 ansible_ssh_port=12345 ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
[web]
kinsta_staging
[staging]
kinsta_staging
تأكد من تطابق المضيف ومنفذ SSH مع ما هو مدرج في لوحة معلومات MyKinsta.
تريد أن تعرف كيف زدنا من حركة المرور لدينا أكثر من 1000 ٪؟
انضم إلى أكثر من 20000 آخرين ممن يتلقون رسائلنا الإخبارية الأسبوعية مع نصائح من الداخل حول وورد بريس!
إشترك الآن
تفاصيل المنفذ ومضيف SFTP لبيئة التدريج.
تفاصيل المنفذ ومضيف SFTP لبيئة التدريج.
تكوين الإنتاج
الآن ، دعنا نكرر نفس العملية أعلاه لبيئة الإنتاج. تأكد من التبديل إلى بيئتك “الحية” في لوحة معلومات MyKinsta.
قم بالتبديل إلى بيئتك الحية في MyKinsta.
قم بالتبديل إلى بيئتك الحية في MyKinsta.
افتح trellis/group_vars/production/main.yml وأضف ما يلي إلى نهاية الملف:
project_root: /www/example_123/public
www_root: /www/example_123/public
web_user: example
web_group: www-data
تأكد من استبدال project_rootو www_rootمسارات المسار الصحيح المنصوص عليها في لوحة القيادة MyKinsta للبيئة الخاصة بك العيش.
بعد ذلك ، افتح trellis/group_vars/production/vault.yml للتحرير عن طريق تشغيل ansible-vault edit group_vars/production/vault.yml:
vault_wordpress_sites:
example.com:
env:
db_user: "example"
db_name: "example"
db_password: "xxxxxxxxxxxxxxx"
# Generate your keys here: https://roots.io/salts.html
auth_key: ""
secure_auth_key: ""
logged_in_key: ""
nonce_key: ""
auth_salt: ""
secure_auth_salt: ""
logged_in_salt: ""
nonce_salt: ""
أخيرًا ، افتح trellis/hosts/production واستبدل المحتويات بـ:
kinsta_production ansible_host=104.154.94.123 ansible_ssh_port=12345 ansible_ssh_extra_args='-o StrictHostKeyChecking=no'
[web]
kinsta_production
[production]
kinsta_production
تعديل نشر المهام
تنشر Trellis محاولة إعادة التحميل php-fpm، والتي نحتاج إلى إزالتها من محاولة التشغيل على خوادم Kinsta. نحتاج أيضًا إلى تشغيل مسح ذاكرة التخزين المؤقت لـ Kinsta عند النشر .
هل تعاني من مشاكل التوقف و وورد بريس؟ Kinsta هو حل الاستضافة المصمم لتوفير الوقت! تحقق من ميزاتنا
افتح trellis/roles/deploy/hooks/finalize-after.yml وانتقل إلى الأسفل. قم بإزالة المهمة الأخيرة لـ Reload php-fpmوأضف ما يلي:
- name: Clear Kinsta cache
uri:
url: "{{ site_env.wp_home }}/ask-support-rep/"
method: GET
استبدل ما ورد ask-support-rep أعلاه بعد مطالبة ممثل دعم Kinsta بعنوان URL لمسح ذاكرة التخزين المؤقت على موقعك.
اختياري: قم بتثبيت تبعيات Composer
إذا ظهرت لك شاشة تخبرك بتشغيل “Composer Install” ، فأضف ما يلي مباشرةً قبل رمز “Clear Kinsta cache” أعلاه:
- name: Install Composer dependencies
composer:
command: install
working_dir: >/www/example123/public/final-path
و /final-pathتختلف قوة استنادا إلى إعدادات الأساس / تعريشة الخاص بك.
إضافة ملحقات kinsta-mu إلى بيدروك
يتم تثبيت مواقع Kinsta mu-plugins تلقائيًا. مع تثبيتات Bedrock ، ستحتاج إلى إحضار kinsta-mu-plugins الحزمة.
افتح site/composer.json وأضف ما يلي داخل repositories المصفوفة:
{
"type": "package",
"package": {
"name": "kinsta/kinsta-mu-plugins",
"type": "wordpress-muplugin",
"version": "2.3.3",
"dist": {
"url": "https://kinsta.com/kinsta-tools/kinsta-mu-plugins.zip",
"type": "zip"
}
}
}
ثم قم بتشغيل ما يلي من دليل Bedrock / site الخاص بك:
composer require kinsta/kinsta-mu-plugins:2.3.3
تكوين Kinsta CDN
يمكنك استخدام Kinsta CDN جنبًا إلى جنب مع موقع Bedrock والمكوِّن الإضافي Kinsta MU ، ما عليك سوى تحديد الدليل يدويًا في ملفك /config/application.php. فيما يلي مثال على استخدام /appالدليل على موقعك.
define( 'KINSTA_CDN_USERDIRS', 'app');
إذا كنت ترغب في إضافة أكثر من دليل إضافي ، فقم ببساطة بفصلها بفاصلات.
define( 'KINSTA_CDN_USERDIRS', 'app,app2,app3');
الخطوات النهائية مع دعم Kinsta
آخر شيء عليك القيام به هو إبلاغ Kinsta بما يجب تعيين جذر المستند عليه. قفز على MyKinsta واطلب من فريق الدعم تحديث جذر المستند الخاص بك إليه public/current/web.
إذا لم تحصل بالفعل على عنوان URL الواضح لذاكرة التخزين المؤقت مسبقًا ، فاطلب أيضًا من ممثل الدعم الخاص بك القيام بذلك ، وتأكد من trellis/roles/deploy/hooks/finalize-after.yml تحديثه بعنوان URL الصحيح لمسح ذاكرة التخزين المؤقت لـ Kinsta عند نشر ناجح.
بمجرد إجراء هذا التغيير ، ستتمكن من النشر في كل من بيئات التدريج والإنتاج بخط واحد:
# Deploy staging
ansible-playbook deploy.yml -e env=staging -e site=example.com --limit=kinsta_staging
# Deploy production
ansible-playbook deploy.yml -e env=production -e site=example.com --limit=kinsta_production
الأفضل من ذلك … إعداد خدمة تكامل مستمرة ، مثل CircleCI ، لتشغيل النشر تلقائيًا نيابة عنك عندما تلتزم بأي منهما staging أو master!
وفر الوقت والتكاليف وحقق أقصى قدر من أداء الموقع من خلال:
مساعدة فورية من خبراء استضافة وورد بريس ، 24/7.
تكامل Cloudflare Enterprise.
يصل الجمهور العالمي إلى 28 مركز بيانات حول العالم.
التحسين من خلال مراقبة أداء التطبيقات المضمنة لدينا.
كل ذلك وأكثر من ذلك بكثير ، في خطة واحدة بدون عقود طويلة الأجل ، وعمليات الترحيل المدعومة ، وضمان استرداد الأموال لمدة 30 يومًا. تحقق من خططنا أو تحدث إلى قسم المبيعات للعثور على الخطة المناسبة لك.

