منبع اصلی نوشتار زیر در این لینک قرار دارد

معرفی و آموزش نصب Centmin Mod روی سرور مجازی

با وجود کنترل‌پنل‌هایی مثل cPanel و Direct Admin مدیریت اولیه سرور مجازی یا اختصاصی برای میزبانی یک یا چند سایت کار خیلی سختی نیست اما فرشته‌های نجاتی هم برای صرفه‌جویی در هزینه لایسنس و خرید سروری که جوابگوی این غول‌ها باشه وجود داره. Centmin Mod یکی از کم دردسرترین هاست که به کمکون میاد.

 Centmin Mod

ترکیب وب سرور قوی و سبک Nginx همراه با PHP-FPM، جایگزین بهینه‌تر Oracle MySQL یعنی Mariadb و Memcached سرور مجازی کم قدرت شما رو به ماشین پر سرعت سرو صفحات وب تبدیل میکنه. CSF Firewall و Postfix هم کار محافظت از VPS در مقابل حملات خرابکارانه و ارسال ایمیل از اپلیکیشنهای نصب شده رو به عهده دارن. نتیجه کار و فاکتورهای ماهیانه سبک‌تر هاستینگ ارزش چند ساعت وقت گذاشتن برای راه اندازی Centmin Mod روی سیستم عامل Centos و تنظیم اولیه رو حتما داره.

ملزومات نصب
سرور مجازی با حداقل ۲۵۶ مگابایت رم، ۱۰ گیگابایت فضا و توزیع لینوکس محبوب CentOS
نوع مجازی ساز مهم نیست. Centmin Mod روی OpenVZ هم بخوبی کار میکنه اما قطعا برای پایداری بهتر KVM، Xen و VMware بیشتر توصیه میشه. Centos هم نسخه ۶ و البته خشک و مینیمال. اگر قبلا روی سرورتون کنترل‌‌پنل یا پکیجهای مشابهی نصب شده باید پاک بشن. هیچ چیز مثل Rebuild نیست

شروع نصب

Centmin Mod محیط گرافیکی مثل کنترل‌پنل‌های معروف نداره در نتیجه تنها دستیار شما یه SSH Client‌ هست و بس. اگر از ویندوز استفاده میکنین Tunnelier انتخاب خوبیه. کاربران لینوکس هم که با Terminal زندگی میکنن!

به سرور لاگین کنین:

ssh root@VPS-IP

و سیستم عامل رو بروز کنین:

yum update

نصب چند بسته حیاتی:

yum -y install bc wget unzip nano yum-plugin-fastestmirror

حذف آپاچی. بعضی سرویس‌دهنده ها از تمپلیت‌هایی استفاده میکنن که بصورت پیش‌فرض وب سرور Apache رو روی VPS نصب میکنن.

yum remove httpd

سه روش برای نصب Centmin Mod وجود داره که اولینش تنها به وارد کردن یک خط کد نیاز داره:

curl -sL http://centminmod.com/installer.sh | bash

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

نصب به روش CLI

Start Centmin Mod Installation

برای دانلود بسته در محل خاص یا ویرایش اسکریپت قبل از نصب باید از این دستورها استفاده کنین:

cd /usr/local/src 
wget http://centminmod.com/download/centmin-v1.2.3-eva2000.07.zip 
unzip centmin-v1.2.3-eva2000.07.zip 
cd centmin-v1.2.3mod 
chmod +x centmin.sh 
yum clean all

و در نهایت

./centmin.sh

یا

./centmin.sh install

تفاوت ۲ دستور بالا فقط در اینه که دستور اول منوی Centmin Mod رو بهتون نشون میده اما دستور دوم نه.

ویرایش اسکریپت قبل از نصب

اعمال تغییرات تو اسکریپت centmin.sh قبل از شروع نصب در بعضی موارد لازمه و چندتاشونم با توجه به نیاز یا منابع سرور مجازی توصیه شده. میتونین از ویرایشگر متنی nano استفاده کنین یا اسکریپت رو دانلود و با ادیتور دلخواه تغییر بدین و دوباره آپلود کنین.

Edit Centmin Script

چک کردن  XEN Node و تغییر خط ۴۰۵

ARCH_OVERRIDE='i386'

اگر مجازی ساز سرور شما Xen هست و سیستم عامل ۳۲ بیتی نصب کردین باید ۶۴ بیتی بودن node رو از پشتیبانی سوال و در صورت مثبت بودن ویرایش بالا رو اعمال کنین.

غیرفعال کردن NSD با ویرایش خط ۱۷۹

NSD_INSTALL=y

 
نصب مدیریت دی‌ان‌اس NSD دردسرهای خودش رو داره و مخصوصا روی سرورهای کم قدرت یا بقول معروف Low End Box پیشنهاد نمیشه. بهتره با استفاده از سرویس‌های DNS Management رایگانی مثل Cloudflare سایتتونو به سرور وصل کنین.

جلوگیری از نصب NGX PageSpeed با ویرایش خط ۱۸۶

NGINX_PAGESPEED=n

ماژول PageSpeed در بسیاری موارد بیشتر از اینکه با کم کردن حجم فایل‌های استاتیک (تصاویر، استایل‌ها، اسکریپتها ) به بهینه شدن لود سایت کمک کنه کارایی سرور رو با درگیر کردن CPU مختل میکنه.

انتخاب Mariadb یا MySQL
اگر به هر دلیلی قصد استفاده از MySQL رو دارین خط ۲۱۴ رو به این صورت ویرایش کنین:

MDB_YUMREPOINSTALL=n

بعد خط ۲۳۰ رو هم به این ترتیب:

MYSQL_INSTALL=y

مقدار Ram مصرفی Mariadb کمی بیشتر از Mysql‌ هست اما مطمئنا کارایی ماریا‌دی‌بی این اختلاف رو قابل چشم‌پوشی میکنه. پیشنهاد میکنم تغییرات بالا رو اعمال نکنین.

انتخاب نام سفارشی سرور با ویرایش خط ۷

CUSTOMSERVERSTRING='nginx centminmod'

برای غیرفعال کردن کلی این ویژگی y آخر خط ۶ رو به n تغییر بدین.

ورژن PHP پیش فرض برای نصب ۵.۴.۳۳ هست که بهتره بعد از آپ شدن Centmin Mod ارتقاش بدیم.

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

Check Yum Repo Compiling Memcached Installing APC Installing Curl Installing Man3 Installing Nginx Mariadb

اتمام نصب
نمایش این پیغام یعنی Centmin Mod بصورت کامل نصب و سرور آماده استفادست.

Installation Complete

کمی بالاتر که برین پسورد مربوط به Memcached Admin Page و MySQL ًRoot نمایش داده میشه که بهتره ذخیرشون کنین.

Centmin Mod Passwords

حالا اگر آی‌پی سرور رو تو مرورگر وارد کنین باید با صفحه تست Nginx‌ مواجه بشین

Nginx Test Page

از اونجایی که بعد از نصب تو پوشه اسکریپت هستین برای ورود به منوی Centmin Mod کافیه این کد رو وراد کنین

./centmin.sh

در صورتی که از پوشه خارج شدین یک مرحله (ورود به دایرکتوری) به کارتون اضافه میشه:

cd /usr/local/src/centmin-v1.2.3mod
./centmin.sh

برای راحتی کار میتونین با این دستورها میانبری برای ورود به منو بسازین:

alias centmin='pushd /usr/local/src/centmin-v1.2.3mod/ && bash centmin.sh'
echo "alias centmin='pushd /usr/local/src/centmin-v1.2.3mod/ && bash centmin.sh'" >> /root/.bashrc

با این کار با وارد کردن دستور centmin هر جای سرور که باشین منوی Centmin Mod براتون باز میشه. بجای centmin عبارت دلخواه خودتونو وارد کنین.

بصورت پیش‌فرض هم یه سری میانبر معرفی شده که پرکاربردترین‌هاشون اینا هستن:
ریستارت وب سرور Nginx

ngxrestart

ریستارت PHP-FPM

fpmrestart

و ریستارت هر دوی این سرویس‌ها

nprestart

لیست کامل میانبرها و بقیه سؤالات متداول رو تو این صفحه ببینین.

چند نکته تقریبا لازم

برای اضافه کردن دامنه یا زیر دامنه به سرور Centmin Mod رو اجرا و گزینه ۲ رو انتخاب کنین.

Add vhost

مسیر فایلهای هر دامنه به این صورت هست (مثال):

/home/nginx/domains/ic.newbie.ir/public

مالک یا owner این پوشه کاربر nginx هست در نتیجه بعد از آپلود فایل با SFTP یا هر نوع انتقال یا ایجاد فایل با دسترسی root باید با دستور chown سطح دسترسی رو تصحیح کنین. بطور مثال:

chown -R nginx:nginx /home/nginx/domains/ic.newbie.ir/public

فایل کانفیگ هر Virtual Host هم از این مسیر قابل دسترسیه:

/usr/local/nginx/conf/conf.d

بطور مثال:

/usr/local/nginx/conf/conf.d/ic.newbie.ir.conf

بعد از ویرایش فایلهای کانفیگ مربوط به Nginx با وارد کردن این دستور از درست بودن تنظیمات مطمئن بشین:

nginx -t

اگر مشکلی وجود نداشته باشه باید آخرین خط پیغام به این صورت باشه:

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

ریستارت کردن nginx بعد از اعمال تغییرات هم فراموش نشه

service nginx restart

یا

ngxrestart

نصب، ارتقا و نصب مجدد سرویس‌ها از طریق منوی CentminMod کار سختی نیست اما توضیحشون نوشته رو بیش از حد طولانی میکنه.
نسخه بتا Centmin Mod که با Centos 7 هم سازگاره از Github قابل دسترسی و تسته. مشکلات نسخه ۰۸ با Openvz باعث شده تا کماکان منتظر انتشار بمونه.
به سایت و انجمن Centmin Mod سر بزنین تا اطلاعات بیشتری در مورد این LEMP Stack دوست داشتنی بدست بیارین.
سعی میکنم این پست و وبلاگم رو با مطالب بیشتری تو این زمینه آپدیت کنم. کمک به کاهش هزینه‌های نگهداری و افزایش سرعت لود وبسایت دوستان مخصوصا کاربران وردپرس لذت خاصی داره

 



برچسب ها :