[[install-dev-making]]
=== ایجاد یک سایت توسعه

[role="summary"]
چگونگی کپی کردن یک سایت زنده به منظور تبدیل به سایت توسعه

(((Development site,making)))
(((Staging site,making)))

==== هدف

ایجاد یک کپی از سایت مورد نظر خود به منظور بررسی ویژگی‌های جدید و بروزرسانی‌ها.

==== دانش پیشنیاز

<<install-dev-sites>>

==== پیشنیازهای سایت

* شما یک سایت زنده و توسعه‌یافته دارید که می‌خواهید از آن یک نسخه برای اهداف آزمایشی خود کپی بگیرید.

* اگر قصد استفاده از Drush را دارید، <<install-tools>> را مشاهده کنید.

==== گام‌ها

. گام‌های موجود در <<install-prepare>> را دنبال کنید تا فضای میزبانی برای سایت توسعه خود را تنظیم کنید، می‌دانید که محل قرارگیری سایت توسعه کجاست و از چه پایگاه‌داده خالی و  حساب کاربری برای آن استفاده می‌شود.

. از پایگاه‌داده سایت اصلی خود یک خروجی کامل بگیرید. یکی از روش‌های زیر را امتحان کنید:
+
  * اگر از MySQL به عنوان پایگاه‌داده استفاده می‌کنید، و سرور سایت اصلی شما دارای phpMyAdmin (از طرف بسیاری کنترل پنل‌های سرویس میزبانی قابل دسترس است) است، از زبانه _Export_ موجود در phpMyAdmin برای خروجی در قالب _SQL_ استفاده کنید. برای کاهش حجم فایل خروجی، استفاده از فشرده‌سازی _gzip_ توصیه می‌شود.

  * اگر از MySQL به عنوان پایگاه‌داده استفاده می‌کنید و به خط-فرمان نیز دسترسی دارید، از دستور زیر (با جایگزین کردن نام پایگاه‌داده، نام کاربری و گذرواژه) استفاده کنید:
+
----
mysqldump -u USERNAME -p'PASSWORD' DATABASENAME > BACKUPFILE.sql
----

  * اگر قصد استفاده از Drush را دارید، از دستور زیر استفاده کنید:
+
----
drush sql-dump > BACKUPFILE.sql
----

  * از https://www.drupal.org/project/backup_migrate[افزونه خارجی Backup and Migrate] واقع در سایت اصلی خود استفاده کنید. برای مشاهده دستورالعمل‌های نصب افزونه‌های خارجی <<extend-module-install>> را مشاهده کنید.
+
اکنون خروجی پایگاه‌داده در فایل _BACKUPFILE.sql_ ذخیره شده است. به دلایل امنیتی، از ذخیره‌سازی این فایل در محل نصب دروپال واقع در سرور میزبانی خودداری کنید. اینکار از دسترسی دیگران به یک کپی از پایگاه‌داده شما جلوگیری بعمل می‌آورد.

. تمام فایل‌های موجود از سایت اصلی خود را به سایت توسعه کپی کنید.

. با استفاده از یک ویرایشگر متن ساده، فایل _sites/default/settings.php_ موجود در بالاترین دایرکتوری سایت توسعه را ویرایش کنید. خطوط انتهای فایل که اطلاعات مربوط به پایگاه‌داده را ذخیره کرده است یافته و آن را مطابق با پایگاه‌داده سایت توسعه بروزرسانی کنید. این خطوط عبارتند از (قبل از ویرایش):
+
----
$databases['default']['default'] = array (
  'database' => 'live_site_database_name',
  'username' => 'live_site_database_username',
  'password' => 'live_site_database_password',
----

. بررسی کنید آیا فایل _settings.php_ دارای تنظیمات پیش رو باشد؛ در صورت مثبت بودن، نیاز دارید که نشانی آن را به سایت توسعه و نه سایت اصلی تغییر دهید:
+
----
$settings['trusted_host_patterns']
----

. فایل خروجی پایگاه‌داده را درون پایگاه‌داده سایت توسعه وارد کنید. یکی از روش‌های زیر را امتحان کنید:
+
  * اگر از MySQL به عنوان پایگاه‌داده استفاده می‌کنید، و سرور سایت اصلی شما دارای phpMyAdmin (از طرف بسیاری کنترل پنل‌های سرویس میزبانی قابل دسترس است) است، از زبانه _Import_ موجود در phpMyAdmin برای ورودی استفاده کنید. در صورت بزرگ بودن حجم فایل، شاید نیاز باشد چندین بار اینکار را انجام دهید.

  * اگر از MySQL به عنوان پایگاه‌داده استفاده می‌کنید و به خط-فرمان نیز دسترسی دارید، از دستور زیر (با جایگزین کردن نام پایگاه‌داده، نام کاربری و گذرواژه) استفاده کنید؛ اگر یک فایل پشتیبان فشرده ایجاد کرده باشید، ابتدا نیاز دارید که آن را از حالت فشرده خارج سازید.
+
----
mysql -u USERNAME -pPASSWORD  DATABASE_NAME < BACKUPFILE.sql
----
+
  * اگر قصد استفاده از Drush را دارید، از دستور زیر استفاده کنید:
+
----
drush sql-query --file=BACKUPFILE.sql
----

. اگر سایت توسعه و اصلی از پیکربندی‌های گوناگونی استفاده می‌کنند پس نیاز است که تغییرات آن را در فایل _settings.php_ انجام دهید. متغیر _$config_ به شما اجازه می‌دهد که برای محیط‌های مختلف توسعه، پارامترهای جداگانه در نظر بگیرید. برای نمونه، ممکن است بخواهید نام سایت اصلی "فروشگاه محصولات کشاورزی" و سایت توسعه "فروشگاه محصولات کشاورزی (در حال توسعه)" باشد. به این منظور، شما می‌توانید مقدار اصلی را در پیکربندی سایت (پایگاه‌داده) و در سایت توسعه از فایل settings.php به شکل زیر استفاده کنید:
+
----
$config['system.site']['name'] = "Development Site for Anytown Farmers Market";
----

==== درک خود را گسترش دهید

* اطمینان یابید که سایت توسعه به خوبی کار می‌کند.

* به عنوان یک مدیر در سایت توسعه وارد شده و حافظه موقت را پاکسازی کنید. <<prevent-cache-clear>> را مشاهده کنید.

* <<extend-deploy>>

// ==== Related concepts

==== منابع مطالعاتی

* https://www.drupal.org/docs/7/backing-up-and-migrating-a-site/backing-up-a-site[صفحه "پشتیبان‌گیری از یک سایت" در مستندات جامعه کاربری _Drupal.org_]
* https://www.drupal.org/docs/develop/local-server-setup/how-to-create-a-test-site[صفحه "ایجاد یک سایت آزمایشی" در مستندات جامعه کاربری _Drupal.org_]

*مشارکت‌کنندگان*

نگارش و ویرایش توسط https://www.drupal.org/u/jhodgdon[Jennifer Hodgdon]، https://www.drupal.org/u/eojthebrave[Joe Shindelar] در https://drupalize.me[Drupalize.Me] و https://www.drupal.org/u/jojyja[Jojy Alphonso] در http://redcrackle.com[Red Crackle]

ترجمه توسط https://www.drupal.org/u/novid[Navid Emami]
