در این مطلب به نحوه نصب ابزار Moodle که برای آموزش مجازی مورد استفاده قرار می‌گیرد، می‌پردازیم. Moodle در وهله اول در لینوکس با استفاده از آپاچی، PostgreSQL/MySQL/MariaDB و PHP که به عنوان بستر LAMP از آنها یاد می‌شود، توسعه داده شده است. معمولاً در همین بستر باید Moodle را اجرا کرد. البته گزینه‌های دیگری نیز در این زمینه وجود دارد که باید نیازهای نرم‌افزاری را برآورده کنند.

اگر قصد داریم که ابزار Moodle را در یک سرور ویندوزی نصب کنید، بایستی به خاطر داشته باشید که از نسخه PHP 5.5 به بعد، نیاز به Visual C++ Redistributable نیز در کنار Visual Studio 2012 دارید که از این لینک قابل‌دریافت است.

سخت‌افزار مورد نیاز برای ابزار Moodle

  • فضای دیسک: ۲۰۰ مگابایت برای کد Moodle در کنار حداکثر فضای ممکن برای ذخیره محتوا. معمولاً‌ حداقل ۵ گیگابایت برای این منظور درنظر گرفته می‌شود.
  • پردازنده: حداقل یک گیگاهرتز، ۲ گیگاهرتز دو هسته‌ای یا بیشتر برای این منظور توصیه می‌شود.
  • حافظه: حداقل ۵۱۲ مگابایت، یک گیگابایت یا بیشتر توصیه می‌شود.
  • در نظر گرفتن سرورهای جداگانه برای «پوسته نهایی» وب و پایگاه داده. در این شرایط، تنظیمات ساده‌تر انجام می‌شوند.

تمام مواردی که در بالا گفته شد، ممکن است برای سخت‌افزارها و ترکیبات نرم‌افزاری و همین‌طور نوع و بار استفاده متفاوت باشند. وب‌سایت‌های شلوغ احتمالاً به منابع اضافی احتیاج پیدا می‌کنند. ابزار Moodle به‌راحتی با افزایش قدرت سخت‌افزاری می‌تواند در گستره بیشتری مورد استفاده قرار گیرد.

برای سایت‌های بسیار بزرگ، بهتر است ابتدا کار را به صورت آزمایشی در ابعاد کوچک شروع کنید و پس از کسب تجربه، ببینید که چه سخت‌افزاری برای تعداد کاربران بیشتر احتیاج دارید.

تنظیمات سرور

بر حسب نوع استفاده، سرور Moodle می‌تواند  هر چیزی، از یک کامپیوتر دسکتاپ گرفته تا ماشین‌های مجازی ابری باشد. تنظیمات استاندارد سرور را نباید به عنوان تنظیمات بهینه برای Moodle درنظر گرفت. به عنوان مثال، وب‌سرور و سرور پایگاه داده نیازمند تنظیمات ویژه برای استفاده بهینه از ابزار Moodle هستند. اگر برای این منظور از یک سرویس میزبانی استفاده می‌کنید، حتماً دقت کنید که تمام نیازهای این ابزار مانند نسخه PHP توسط پلتفرم برآورده شوند. در چنین شرایطی انتخاب سرویس مناسب از بین گزینه‌های در دسترس، مؤثر خواهد بود.

دریافت و انتقال فایل‌ها به مکان مناسب

نکته مهم: در حالی که جاهای مختلفی برای دریافت کد Moodle وجود دارند، اکیداً توصیه می‌شود که تنها از وب‌سایت moodle.org این ابزار را دریافت کنید. چرا که در صورت بروز مشکل، پشتیبانی بهتری در اختیار خواهید داشت.

دو گزینه برای این منظور در اختیار دارید:

  • دریافت آخرین نسخه از این آدرس و استخراج فایل‌ها.
  • گرفتن کد از منبع Git (پیشنهادی برای توسعه‌دهندگان و سهولت در ارتقا)

$ git clone -b MOODLE_{{Version3}}_STABLE git://git.moodle.org/moodle.git

هر کدام از گزینه‌های بالا باید منجر به یک دایرکتوری با نام moodle شوند که در خود تعدادی فایل و فولدر دیگر داشته باشد. می‌توانید کل این فولدر را در دایرکتوری اسناد سرور خود قرار دهید. در این حالت، آدرس نمونه http://yourwebserver.com/moodle در اختیار قرار می‌گیرد. یا اینکه می‌توانید تمام محتواها را در دایرکتوری اصلی اسناد سرور وب خود قرار دهید و از آدرس http://yourwebserver.com استفاده کنید.

نکته: اگر می‌خواهید ابزار Moodle را در کامپیوتر شخصی خود دریافت کنید و سپس آن را به وب‌سایت خودتان در هاست انتقال دهید، بهتر است فایل Moodle را به صورت فشرده منتقل کنید و سپس در سرور آن را استخراج کنید. در صورتی که استخراج را در کامپیوتر شخصی خود انجام دهید، Moodle متشکل از بیش از ۲۵ هزار فایل است که تلاش شما برای انتقال این تعداد فایل از طریق FTP یا برنامه‌هایی مثل فایل‌منیجر احتمالاً بی‌نتیجه خواهد بود.

به خاطر داشته باشید که فایل‌های Moodle حتماً از امنیت لازم برخوردار باشد. عدم قابلیت نوشتن توسط کاربر وب‌سرور امری حیاتی خواهد بود. برای این منظور، به صورت «روت» فرمان‌های زیر را اجرا کنید.

chown -R root /path/to/moodle

chmod -R 0755 /path/to/moodle

فایل‌ها در مالکیت administrator/superuser هستند و تنها توسط آنها قابل‌نوشتن هستند. کاربران دیگر فقط می‌توانند آنها را بخوانند.

در وب‌سایت‌های test/dev ممکن است بخواهید که این فایل‌ها قابل‌نوشتن هستند تا بتوانید از آنها برای نصب پلاگین داخلی استفاده کنید. چنین رویه‌ای برای وب‌سایت‌های در دسترس همگان و آنلاین توصیه نمی‌شود.

ایجاد یک پایگاه داده خالی

در مرحله بعد، یک پایگاه داده جدید و خالی ایجاد می‌کنیم. برای تکمیل مراحل نصب باید حتماً اطلاعات زیر را پیدا کنید و در اختیار داشته باشید.

  • dbhost – عنوان هاست سرور پایگاه داده. در صورتی که پایگاه داده و وب‌سور در یک سیستم باشند، معمولاً همان لوکال‌هاست است.
  • dbname – عنوان پایگاه داده – هر عنوانی که برای پایگاه داده به کار می‌برید.
  • dbuser – نام کاربر پایگاه داده – برای این منظور نباید از کاربر روت یا مدیریت استفاده کنید. یک حساب کاربری مناسب با حداقل مجوّزهای موردنیاز برای پایگاه داده بسازید.
  • dbpass – کلمه عبور برای کاربر پایگاه داده.

در صورتی که از سرویس میزبانی برای وب‌سایت خود استفاده می‌کنید، باید صفحه اطلاعات مدیریتی لازم برای پایگاه‌های داده را به عنوان بخشی از پنل کنترل خود پیدا کنید.

ایجاد دایرکتوری داده‌های moodledata

ابزار Moodle نیاز به یک دایرکتوری برای ذخیره تمام فایل‌هایش دارد. این فایل‌ها شامل تمام فایل‌های آپلود شده وب‌سایت، داده‌های موقتی، حافظه نهان، داده‌های دوره‌ای و … می‌شوند. وب‌سرور بایستی مجوّز لازم برای نوشتن در این دایرکتوری را داشته باشد. در سیستم‌های بزرگتر بایستی میزان فضای خالی را در هنگام جانمایی این دایرکتوری درنظر بگیرید.

بر اساس روش پیش‌فرض Moodle برای ذخیره داده‌های نهان، درصورتی که روش‌های کُند ذخیره‌سازی مانند NFS را انتخاب کنید، ممکن است از نظر سطح عملکرد با مشکل روبرو شوید. در صورت تمایل می‌توانید از ابزارهایی مانند redis یا memcached برای کچینگ استفاده کنید.

نکته مهم: این دایرکتوری نباید به صورت مستقیم از طریق وب در دسترس باشد. چنین کاری حفره‌ای عمیق در امنیت وب‌سایت ایجاد خواهد کرد. هرگز این دایرکتوری را در ریشه وب یا درون پوشه برنامه Moodle قرار ندهید.

در اینجا نمونه‌ای از ساخت دایرکتوری و تنظیمات مجوّز نوشتن برای کاربران در یک سرور لینوکس را مشاهده می‌کنید. چنین چیزی تنها برای سرور‌های Moodle ‌خارج از شبکه و «به اشتراک گذاشته نشده» مناسب خواهد بود.

# mkdir /path/to/moodledata

# chmod 0777 /path/to/moodledata

امنیت moodledata در یک دایرکتوری وب

در صورتی که از سرویس میزبانی استفاده می‌کنید و هیچ چاره‌ای جز قرار دادن moodledata در دایرکتوری عمومی وب ندارید، می‌توانید با استفاده از یک فایل .htaccess در دایرکتوری moodledata، آن را ایمن‌سازی کنید. برای این منظور، یک فایل با نام .htaccess بسازید که تنها شامل خطوط زیر باشد.

order deny,allow

deny from all

شروع نصب ابزار Moodle

حالا زمان اجرای برنامه نصب برای ساخت جداول پایگاه داه و تنظیم وب‌سایت جدید است. روش پیشنهادی برای این منظور استفاده از نصب خط فرمان است. اگر به هر دلیل (مثلاً کار در یک ویندوز سرور) نمی‌توانید از این روش استافده کنید، برنامه نصب مبتنی بر وب می‌تواند به کمک شما بیاید.

نصب از طریق خط فرمان

بهترین راه برای اجرای خط فرمان از طریق کاربر وب سیستم شماست. نمونه استفاده از خط فرمان را در زیر می‌بینید (فرمان‌ها به صورت روت و ‘www-data’ را با کاربر وب خود جایگزین کنید).

# chown www-data /path/to/moodle

# cd /path/to/moodle/admin/cli

# sudo -u www-data /usr/bin/php install.php

# chown -R root /path/to/moodle

فرمان chown این امکان را به اسکریپت می‌دهد که یک فایل config.php جدید بنویسد. برای اطلاعات بیشتر در مورد گزینه‌های این فرمان می‌توانید به صورت زیر عمل کنید.

# php install.php --help

ممکن است در ادامه با پرسش‌هایی روبرو شوید که در این صفحه در مورد آنها بحث نشده است. در صورتی که از چیزی مطمئن نبودید، فقط حالت‌های پیش‌فرض را تأیید کنید.

نصب تحت وب

برای راحتی کار می‌توانید ابزار Moodle را از طریق وب نصب کنید. توصیه می‌شود که تا قبل از تکمیل مراحل نصب، حتماً وب‌سرور خود را به‌گونه‌ای تنظیم کنید که صفحه وب‌تان از دسترس خارج شود.

به منظور اجرای اسکریپت نصب تحت وب، تنها کافی است که با یک مرورگر به آدرس اصلی Moodle بروید.

فرآیند نصب ممکن است در طول چند صفحه ادامه پیدا کند. از شما خواسته می‌شود که قوانین مرتبط با حقوق مؤلف، کپی‌رایت را رعایت کنید. جداول پایگاه داده را که ساخته می‌شوند، مشاهده کنید و همین‌طور جزئیات حساب کاربری و وب‌سایت را ارائه نمایید. ساخت پایگاه داده ممکن است به زمان نیاز داشته باشد و باید در این مورد صبور باشید. نهایتاً باید با صفحه اولیه ابزار Moodle روبرو شوید که شما را به ساخت یک دوره آموزشی جدید تشویق می‌کند.

احتمالاً از شما خواسته می‌شود که فایل تنظیمات جدید config.php را دریافت کنید و آن را به محل نصب Moodle آپلود کنید. در هر صورت، دستورالعمل‌های روی صفحه را دنبال نمایید.

تنظیمات نهایی

تنظیمات درون ابزار Moodle

برای این منظور برخی گزینه ها در صفحات بخش Moodle Site Administration در دسترس قرار دارند. این بخش از طریق سربرگ ‘Site administration’ در قسمت ‘Administration’ و یا دکمه Site administration در نوار ناوبری قابل‌دسترسی است. در این به برخی از مهمترین این گزینه‌ها می‌پردازیم.

  • در مسیر Administration > Site administration > Server > Email > Outgoing mail configuration می‌توانید سرور smtp و تأییدیه آن را در صورت نیاز تنظیم کنید. در نتیج، وب‌سایت Moodle می‌تواند ایمیل ارسال کند. همچنین می‌توانید در این صفحه ایمیل بدون نیاز به پاسخ یا noreply تنظیم کنید.
  • در مسیر Administration > Site administration > Server > Server > Support contact امکان تنظیم ایمیل پشتیبانی برای شما وجود خواهد داشت.
  • در مسیر Administration > Site administration > Server > System paths، آدرس باینری‌های aspell، du و du تنظیم می‌شود.
  • در صورتی که با یک فایروال روبرو هستید، از طریق مسیر Administration > Site administration > Server > HTTP، می‌توانید پروکسی مورد نیاز خود را در بخش ‘Web proxy’ تنظیم کنید.
  • برای بروزرسانی منطقه زمانی می‌توانید از مسیر Administration > Site administration > Location > Update timezones اقدام کنید.
  • تنظیم منطقه زمانی سرور درون فایل ini . این فایل، بسته به سیستم‌عاملی که استفاده می‌کنید، احتمالاً در مسیر etc/php.ini یا /etc/php.d/date.ini قرار خواهد داشت.
[Date]

; Defines the default timezone used by the date functions

date.timezone = "YOUR LOCAL TIMEZONE"

کارهای باقی‌مانده

تنظیمات کرون

وظایف پیش‌زمینه ابزار Moodle، از جمله ارسال ایمیل‌های تالار گفتگو و پشتیبان‌گیری دوره‌های آموزشی، به کمک اسکریپت‌های صورت می‌گیرند که می‌توانید آنها را برای اجرا در هر ساعت از شبانه‌روز تنظیم کنید. از این اسکریپت‌ها به عنوان Cron تعبیر می‌شود.

تنظیم نسخه‌های پشتیبان

امنیت وب‌سایت Moodle

افزایش حداکثر اندازه فایل ارسالی

بررسی کارآیی ایمیل

از طریق لینک موجود در Site administration > Server > Test outgoing mail configuration، یک ایمیل آ‌زمایشی برای خودتان ارسال کنید. حتماً این کار را انجام داده و به سادگی از کنار آن گذر نکنید.

پایان نصب ابزار Moodle

ایجاد یک دوره آموزشی جدید: حالا می‌توانید از طریق مرورگر خودتان به Moodle دسترسی داشته باشید. این کار از طریق آدرسی که در طول نصب تنظیم کرده‌اید، صورت می‌گیرد. با کاربر مدیریت به آن وارد شوید و یک دوره آموزشی جدید در آن بسازید.

در صورتی که با مشکل روبرو شدید، بهتر است موارد زیر را امتحان کنید.

  • تنظیمات مجوّز فایل را به دقت بررسی کنید. آیا وب‌سرور می‌تواند فایل‌های برنامه Moodle را بخواند؟ (نه اینکه بنویسد) آیا وب‌سرور می‌توانید دایرکتوری داده‌های Moodle را بخواند و بنویسد؟ حتماً باید با مفهوم مالکی و مجوّز فایل‌ها در سیستم‌عامل‌تان آشنا باشید.
  • مجوّز‌های پایگاه داده خود را بررسی کنید. آیا کاربر پایگاه خود را با مجوّزهای مناسب تنظیم کرده‌اید؟ مخصوصاً اگر وب‌سرور و سرور پایگاه داده شما در سیستم‌های جداگانه قرار دارند، این کار را باید به‌درستی انجام دهید.
  • فایل تنظیمات php را به صورت دستی بسازید. فایل config-dist.php در دایرکتوری ریشه ابزار Moodle به config.php کپی کنید. سپس آن را ویرایش کرده و تنظیمات پایگاه داده / وب‌سایت را در آن انجام دهید. در نتیجه، پایه درستی برای نصب ایجاد می‌شود.
  • وقتی php را در اختیار داشته باشید، می‌توانید عملکرد عیب‌یابی آن را فعال کنید. چنین چیزی می‌تواند در پیدا کردن اطلاعات اضافی در هنگام بروز مشکل به شما کمک کند. در این صورت، حتماً تاریخچه خطاهای وب‌سرور را بررسی کنید.
  • تنظیمات ini / .htaccess را دوباره بررسی کنید. ببنید که آیا این تنظیمات مناسب هستند و در صورتی که فایل را به درستی ویرایش کرده‌اید، آیا وب‌سرور را دوباره راه‌اندازی کرده‌اید یا خیر؟
  • در صورتی که پلاگین‌های خارجی، تم‌ها یا سایر کدها را قبل از فرآیند نصب اجرا کرده‌اید، آنها را حذف کنید و سپس دوباره امتحان کنید.