آموزش دایرکت ادمین، سی پنل، وب سایت پنل

خانه / مدیریت سرور

مدیریت سرور

ابزار مانیتورینگ پهنای باند و ترافیک و I/O دیسک در لینوکس

Live bandwidth monitor for network and disk I/O

گاهی اوقات بسیار مفید است بدانید دقیقا چه مقدار پهنای باند شبکه از یک میزبان خاص استفاده می کند و یا چه مقدار ترافیک توسط Gateway  استفاده میشود. به عنوان یک ابزار برای بررسی سریع فعالیت شبکه، ابزاری بهتر از bwm-ng پیدا نمیکنم.

Bandwidth Monitor NG یک برنامه نظارت بر پهنای باند ساده  است که می تواند از طریق کنسول در سیستم عامل لینوکس، BSD و سولاریس اجرا شود.

برای نصب این ابزار (در Centos) کافی است از دستور زیر کمک بگیرید:

yum install bwm-ng

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

bwm-ng

برای مشاهده مقادیر مصرف بر اساس معیارهای بالاتر مانند مگابایت از سوییچ -d  استفاده کنید.

bwm-ng  -d

برای مشاهده ترافیک تمام interface  ها از سوییچ -a  استفاده نمایید.

bwm-ng  -a

برای نمایش و جمع آوری امار در بازه زمانی مشخص بر حسب میلی ثانیه ( مقدار پیش فرض ۵۰۰msec)  سوییچ -t

bwm-ng  -t  ۰٫۵

برای مشاهده I/O دیسک دستور زیر را اجرا کنید.

bwm-ng -i disk

تغییر مسیر root دایرکتوری برای subdomain و addon در cPanel

cpanel subdomain folder outside of public_html

برای تغییر دایرکتوری اصلی root در subdomain و addon domain در cPanel باید این قابلیت در WHM فعال شود.

به مسیر زیر بروید:

WHM >> Home >> Server Configuration >> Tweak Settings

 

این ویژگی را off کنید.

غیرفعال کردن Directory Index در سرور

  Disable Directory Browsing -disable directoy indexing

برای غیرفعال کردن نمایش فایل ها در دایرکتوری خاص در سرور در صورتی که وب سرور شما apache است کافیست کد زیر را در .htaccess خود را public_html قرار دهید.

Options -Indexes

در صورتی که از nginx استفاده میکنید در فایل nginx.conf سایت مورد نظر خود این خط  را به تنظیمات آن اضافه کنید.

autoindex off,

فعال کردن متد PUT و DELETE در apache و nginx در دایرکت ادمین

Enabling PUT and DELETE methods in apache/nginx

برای فعال سازی متد های DELETE و PUT در وب سرورهایی که از دایرکت ادمین استفاده میکنند باید دستورات زیر را در ssh وارد نمایید.

cd /usr/local/directadmin/custombuild
./build set http_methods GET:HEAD:POST:PUT:DELETE
./build rewrite_confs

 

آیا واقعا سرویس VPS مناسب سایت من است؟

VPS چیست؟ چرا و چه زمانی باید از VPS برای میزبانی سایت استفاده کنیم؟

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

حالا این سوال مطرح میشود که آیا واقعا سرور مجازی مناسب میزبانی سایت ها می باشد یا خیر؟

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

نکته بعدی که باید توجه کنید سیستم عامل است، سیستم عامل سرور مجازی به تنهایی، منابع سخت افزاری لازم دارد بنابراین میزانی از منابع سرور مجازی شما درگیر سیستم عامل سرور خواهد شد، از طرفی اگر کنترل پنل مدیریتی (مانند Cpanel) نیز بروی آن نصب کنید، آن هم منابعی از سرور را استفاده خواهد کرد. در بسیاری از موارد استفاده از VPS   برای شما نه تنها مفید نیست بلکه ممکن است باعث مشکلات هم بشود.

فک کنید سایتی که با CMS  های آماده مانند WordPress  یا prestashop طراحی شده است به خودی خود با توجه به  نوع CMS و پلاگین ها و قالب های استفاده شده منابع قابل توجهی نیاز خواهد داشت، حالا منابع مورد نیاز سیستم عامل و کنترل پنل را هم به این موارد اضافه کنید و در ادامه احتمالا سایت شما بازدید هم خواهد داشت و وب سرور و سایر سرویس ها (مانند ایمیل، دیتابیس، آنتی ویرویس) نیز باید پاسخ گوی درخواست بازدیدکنندگان سایت باشند و منابع باز هم بیشتر و بیشتر استفاده خواهد شد.
استفاده از یکVPS  با منابع کم مطمئنا و بزودی مشکلاتی برای سایت و سرور شما بوجود خواهد آورد، پس تبلیغات برای خرید VPS را براحتی قبول نکنید و قبل از خرید  VPSبه نوع استفاده از آن و سایت خود توجه کنید. واقعا استفاده از VPS  همیشه بهتر از استفاده از هاست اشتراکی نیست!

VPS  باRam  بین ۲ تا ۴ گیگ و یک پردازنده مجازی با دو core  برای یک سایت با بازدید کمتر ۲۰۰۰ در روز مناسب است اما برای سایت هایی با بیش از این بازدید مطمئنا مناسب نیست.

اگر از Cpanel  یا Directadmin  استفاده میکنید سروری کمتر از ۴G  رم برای شما مشکل ساز خواهد بود و اگر شما خدمات هاستینگ ارائه میدهید و سایت های زیادی را میزبانی میکنید بهتر است از VPS  با منابع محدود استفاده نکنید.
اگر شما از سیستم عامل ویندوز استفاده کنید مطمئنا منابع بیشتری لازم خواهد بود و عملا VPS  با سیستم عامل ویندوز با RAM  کمتر از ۳G  کیفیت بالایی در پاسخ گویی به درخواست ها نخواهد داشت. ( اگر سایر سرویس های ویندوز سرور را فعال کنید و نرم افزارهای بیشتری بروی آن نصب کنید باید منتظر  بدتر شدن سرعت اتصال و پاسخ گویی هم باشید)
نکته دیگر تعداد core  هایی است که به VPS  اختصاص داده میشود، از جایی که تعداد core  ها و thread  های سرور اصلی محدود است، بنابراین اختصاص core  هایی با بیش از توان سرور اصلی مجازی سازی شده،  میتواند برای VPS  ها مشکل ساز باشد. فرض کنید ۶ سرور مجازی یا همان VPS  بروی سرور اصلی ساخته شده باشد و به هر کدام ۲Core  اختصاص داده شده باشد که مجموعا ۱۲core  میشود بنابراین سرور اصلی باید حداقل ۱۲core  داشته باشد. (به این موضوع توجه کنید سرور اصلی و سیستم مجازی ساز مانند   Esxiیاkvm  و سیستم عامل های آن ها خود نیز به منابعی مانند Ram  و Cpu  نیاز خواهد داشت)
توجه داشته باشید بجز VPS  شما چندین VPS  دیگر روی سرور اختصاصی اصلی وجود دارد و شما مطمئن نیستید که منابع اختصاص داده شده به همه VPS ها در حد توان سرور است یا مدیر سرور برای فروش بیشتر VPS  منابع را oversell  کرده است(یعنی بیش از توان سرور VPS  ایجاد و منابع در اختیار آن ها قرار داده است.)

همینطور ابزارهای مجازی سازی توانایی مدیریت دقیق منابع را ندارند، یعنی ممکن است یکVPS  بروی سرور منابعی بیش از منابع اختصاص داده شده استفاده کند و باعث بروز مشکل برای سایر VPS  های سرور شود.

با توجه به مواردی که تو این مقاله در مورد VPS  ها فهمیدیم، حالا با دقت بیشتری میتونیم از این سرویس استفاده کنیم.

نصب PHP Composer در لینوکس

Install PHP Composer on a Linux

برای نصب php composer مراحل زیر را دنبال کنید.

curl -sS https://getcomposer.org/installer | php
chmod +x composer.phar
mv composer.phar /usr/local/bin/composer

نصب به اتمام رسید. برای مشاهده نسخه composer دستور زیر را وارد کنید..

composer -V

آشنایی کامل با فایروال Iptables

Iptables and Netfilter Architecture

فایروال ها ابزار مهمی هستند که می توانند به منظور حفاظت از سرورها و زیرساخت ها پیکربندی شوند. در اکوسیستم لینوکس، ابزار iptables  به عنوان فایروال به طور گسترده ای استفاده می شود که با چارچوب فیلترینگ بسته netfilter هسته (kernel) سیستم عامل در ارتباط است.

در این مقاله  ما در مورد چگونگی استفاده از iptables و تعامل آن با netfilter و چگونگی ارتباط اجزای مختلف فیلترینگ و سیستم mangling در کنار یکدیگر صحبت خواهیم کرد.

Netfilter Hooks

۵ قلاب یاhook  برای netfilter  تعریف شده است که برنامه میتواند با آن ها کار کند. هر پکتی که وارد فرایند پردازش میشود با یکی از hook  ها در kernel  قلاب (hook) میشود. بسته به نوع هر پکت input, output و یا  forward قلابی به آن اختصاص داده میشود.

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

ادامه ی مطلب

ریدایرکت سایت با htaccess به https

redirect www to non-www or vice versa

کدهای زیر را در htaccess قرار دهید

ریدایرکت بدون www به www

RewriteCond %{HTTP_HOST} ^your_domain.com$
RewriteRule ^(.*)$ http://www.your_domain.com/$1 [R=301]

 

ریدایرکت www به بدون www

RewriteCond %{HTTP_HOST} ^www.your_domain.com$
RewriteRule ^(.*)$ http://your_domain.com/$1 [R=301]

 

برای زمانی که از SSL و https استفاده میکنید..

ریدایرکت بدون www به www

RewriteCond %{HTTP_HOST} ^your_domain.com$
RewriteCond %{SERVER_PORT} ^443
RewriteRule ^(.*)$ https://www.your_domain.com/$1 [R=301]

ریدایرکت www به بدون www

RewriteCond %{HTTP_HOST} ^www.your_domain.com$
RewriteCond %{SERVER_PORT} ^443
RewriteRule ^(.*)$ https://your_domain.com/$1 [R=301]

برای ریدایرکت هم زمان http و https به آدرس https بصورت زیر عمل کنید.

RewriteCond %{HTTP_HOST} ^www.your_domain.com$
RewriteCond %{SERVER_PORT} ^80
RewriteCond %{SERVER_PORT} ^443
RewriteRule ^(.*)$ https://your_domain.com/$1 [R=301]

 

 

عدم مشاهده اکانت در List Accounts در سی پنل

Missing account on the “List Accounts” in the WHM on a cPanel server

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

/etc/trueuserdomains
/etc/userdomains
/var/cpanel/users/USERNAME
/etc/apache2/conf/httpd.conf

به جای USERNAME نام کاربری را وارد کنید.

در دو فایل اول باید خطی مانند زیر وجود اشته باشد:

domain.com: username

که domain.com نام دامنه و username نام کاربری اکانت است.

در فایل سوم باید خطوط زیر موجود باشد:

DNS=domain.com
USER=username
IP=ipaddress
OWNER=root(or reseller owner)

که شامل نام دامنه، نام کاربری، IP و نماینده مالک یوزر می باشد. مطمئن شوید این ۴ خط در این فایل بصورت صحیح وجود داشته باشد.

فایل httpd.conf هم شامل تنظیمات آپاچی هر یوزر است بنابراین یوزر مورد نظر باید در این فایل دارای تنظیمات صحیح و مشابه سایر اکانت ها باشد. در صورت وجود مشکل و یا نیاز به ایجاد مجددا این فایل دستور زیر را اجرا کنید..

/scripts/rebuildhttpdconf

در نهایت پس از اطمینان از موارد بالا دستور زیر را اجرا کنید.

/scripts/updateuserdomains

 

 

 

تغییر نسخه php در دایرکت ادمین

برای تغییر یا بروز رسانی نسخه php در دایرکت ادمین دستورات زیر را پیگیری کنیدو در نسخه custombuild2.0 امکان استفاده از دو نسخه php وجود دارد.

برای این تغییرات در custombuild2.0

cd /usr/local/directadmin/custombuild
./build update
./build update_data
./build set php2_mode php-fpm
./build set php2_mode mod_php
./build set php1_release 7.0
./build set php2_release 5.6

در این آموزش نسخه اول php ورژن ۷ و نسخه دوم ورژن ۵٫۶ انتخاب شده است، همچنین امکان تعیین mode برای هر نسخه php وجود دارد.
در نهایت php را rebuild کنید.

./build php n
./build rewrite_confs