آزمایشگاه انلاین

بایگانی‌ها دایرکت ادمین - آزمایشگاه انلاین | سرور مجازی | سرور اختصاصی

چگونه برای امنیت بیشتر پورت ssh را در لینوکس تغییر دهیم؟
چگونه برای امنیت بیشتر پورت ssh را در لینوکس تغییر دهیم؟
نحوه تغییر رمز ویندوز سرور ۲۰۰۸
نحوه تغییر رمز ویندوز سرور ۲۰۰۸
نحوه تغییر رمز ویندوز سرور ۲۰۰۳
نحوه تغییر رمز ویندوز سرور ۲۰۰۳
آموزش نصب MongoDB در سرور لینوکس CentOS
آموزش نصب MongoDB در سرور لینوکس CentOS
آموزش نصب ssl در سی پنل
آموزش نصب ssl در سی پنل
آموزش نصب Webmin در سرور لینوکس
آموزش نصب Webmin در سرور لینوکس
محدود کردن سرعت دانلود هر کانکشن در nginx به کمک limit_rate
محدود کردن سرعت دانلود هر کانکشن در nginx به کمک limit_rate
DameWare Central Server 12.0.2
DameWare Central Server 12.0.2
افر ویژه تعداد محدود سرور مجازی المان
افر ویژه تعداد محدود سرور مجازی المان
تغییر آی پی در cpanel/whm
تغییر آی پی در cpanel/whm
مقایسه عجیب وب سرور Litespeed با آپاچی و Nginx
مقایسه عجیب وب سرور Litespeed با آپاچی و Nginx
محدود کردن تعداد کانکشن ها و سرعت دانلود آپاچی
محدود کردن تعداد کانکشن ها و سرعت دانلود آپاچی

خرید هاست با قیمت مناسب

خرید هاست با قیمت مناسب

هاست اشتراکی | هاست پربازدید | سرور مجازی المان | سرور مجازی فرانسه | سرور مجازی | هایپر سرور | سرور اختصاصی | سرور | سرور از 12 لوکیشن | سی پنل | دایرکت sll

احتمالا برای شما نیز رخ داده گاهی اوقات کندی سرعت در سایت وردپرسی تان حس نمایید . ممکن است دوست شما که تخصصی در زمینه سرور و کانفیگ ندارد اعلام نماید هاست شما خراب است ! ولی بیایید کمی عاقلانه تر به موضوع نگاه کنیم . هاست خراب در شاخه ی فناوری اطلاعات »  مدیریت و کانفیگ سرور معنی ندارد ! درصورتیکه ایرادی از سمت هاست ( درواقع سرور میزبان ) باشد مربوط به ناسازگار بودن نسخه php یا اکستنشن های آن با اسکریپت شماست که با یک ارسال درخواست پشتیبانی قابل حل خواهد بود.

در این مطلب قصد داریم شیوه های شناسایی علل کندی سرعت وردپرس را بررسی کنیم . در آموزش های بعدی روش های شناسایی علت ارور ۵۰۰ و سفید شدن صفحه در وردپرس را به صورت جزئی تر بررسی می کنیم . خوشحال می شویم تا انتها با مرکز آموزش جامع IRANPAGE ( کانفیگ سرور ) همراه باشید.

۱- ابتدا حالت دیباگ را فعال کنید ( آموزش فعال کردن حالت دیباگ در وردپرس )

۲- حالا یک بار صفحه اصلی سایت خود را رفرش نمایید . ارور هایی که مشاهده می کنید به ازای هر خط ارور زمانی بین ۱ الی ۳ ثانیه برای پردازش هر خط طول می کشد . در حالت عادی و بدون مشکل سایت وردپرسی شما نهایتا دو notice باید داشته باشد .

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

این ارور ها چه می گویند؟

مشکلات بیشتر رخ داده به شرح ذیل هستند .

۲-۱ ) وقتی دو افزونه آمارگیر همزمان فعال باشد ( آماره وردپرس + cystat یا … )

۲-۲) قالب شما قدیمی باشد و با توابع آخرین نسخه وردپرس آپگرید نباشد

۲-۳ ) افزونه های امنیتی باعث کندی می شود . سعی کنید از طریق htaccess دسترسی را برای پوشه wp-admin محدود نمایید.

۲-۴) از افزونه کش استفاده نکنید ! هر چه افزونه بیشتری نصب کنید تعداد فایل php بیشتری خواهید داشت و هر چه فایل های php شما بیشتر باشند مدت زمان پردازش سایت شما افزایش می یابد . از این آموزش استفاده نمایید »کد htaccess کش شدن سایت بر روی مرورگر

۲-۵ ) از افزونه فشرده سازی استفاده نکنید ! با یک کد ساده در htaccess عناصر سایت را به صورت زیپ شده و فشرده به مرور منتقل کنید ، با این آموزش » فشرده کردن عناصر

۳ – سایر علل های شایع در کندی سایت وردپرسی

۳-۱) افزونه ی شما از یک سایت ثالث کد js را فراخوانی کند ( مثلا افزونه هایی که فونت فراخوانی می کنند یا مطالب توییتر و فیسبوک را فراخوانی می کنند )

۳-۲) بهینه نبودن قالب سایت شما که شامل :

۳-۲-۱) قالب شما از طریق css به جای php عکس ها را ریسایز می کند.

۳-۲-۲) تعداد زیادی فایل js یا css در قالب و افزونه های شما به کار گرفته شده ، سعی نمایید آنها را یکی کنید تا تعداد ریکوئست ها را کاهش دهید.

۳-۲-۳ )  فونت ، فایل css و فایل js از سایت ثالثی در قالب داشته باشید .

 

مقایسه بین سرویس های سرور مجازی با میزبانی وب و هاست اشتراکی

میزبانی وب اشتراکی:

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

سرور مجازی VPS :

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

مقایسه فوق لزوما به معنای بد بودن هاست اشتراکی و خوب بودن سرور مجازی نیست . حالا که شما اطلاعاتی راجع به مفهوم کلی هاست اشتراکی و سرور مجازی پیدا کرده اید باید بدانید که کدام یک از سرویس های فوق برای کار شما مورد نیاز است … سرور مجازی VPS یا هاست اشتراکی ؟

مدیریت هاست اشتراکی :

در سرویس های میزبانی وب اشتراکی یا هاست ، مسئولیت مدیریت سرور و نصب پکیج های مورد نیاز ، برقراری امنیت هاست و سرور ، ساپورت و به روز نگهداشتن سرور همه و همه بر عهده مدیر هاست می باشد و شما به عنوان اجاره کننده هاست عملا مسئولیتی جز مدیریت وب سایت و پورتال خود را به عهده ندارید . نصب و کامپایل و مدیریت php ، نصب و مدیریت و پیکر بندی MySQL ، مدیریت سرویس های DNS و وب سرور نصب شده بر روی سرور مانند آپاچی یا لایت اسپید و … تماما با مدیریت هاست است … بنا بر این مدیریت و استفاده از سرویس میزبانی وب اشتراکی آسان است و از طرفی نیاز به داشتن دانش تکنیکال و فنی در زمینه سیستم عامل لینوکس و وب هاستینگ حرفه ای ندارد . سرویس هاست اشتراکی مناسب انواع وب سایت ها و بیزنس های کوچک و با ترافیک پایین تا متوسط است . وب سایت های استاتیک عملا نیازی به اجاره سرور مجازی ندارند و بهترین گزینه برای آن ها استفاده از سرویس هاست اشتراکی است .

مدیریت سرور مجازی VPS :

بر خلاف سرویس میزبانی وب و هاست اشتراکی ، مسئولیت مدیریت کل سرور و سیستم عامل سرور به عهده مدیر سرور مجازی است . برقراری امنیت در سرور مجازی ، نصب کلیه سرویس ها و کنترل پنل وب هاستینگ ، نصب و پیکر بندی و مدیریت سرویس هایی مانند php ، بانک اطلاعاتی مانند MySQL ، سرویس های دی ان اس و وب سرور ، نصب و مدیریت فایروال و آنتی ویروس ، کنترل و جلوگیری از حملات DOS و … همه و همه بر عهده اجاره کننده سرور مجازی است . بنا بر این میتوان گفت مدیریت و استفاده از سرویس سرور مجازی آسان نیست و نیاز به داشتن دانش و تجربه در زمینه مدیریت سرور و لینوکس دارد . در صورتی که از دانش فنی در زمینه مدیریت سرور و سیستم عامل سرور برخوردار نیستید استفاده از سرور مجازی VPS مدیریت نشده را به شما پیشنهاد نمیکنیم . با اندکی هزینه بیشتر می توانید از سرویس های سرور مجازی مدیریت شده گروه کامپایلر استفاده کنید و مدیریت کل سرور را به عهده متخصصان کارشناسان ما بسپارید . سرور مجازی مناسب وب سایت هایی با ترافیک و بازدید بالا و در سطح وسیع است و میزان رم و حافظه ، پردازنده و CPU ، فضای دیسک و … همه و همه بر اساس نیاز های وب سایت و یا بیزنس شما قابل تغییر و انتخاب است

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

حتی بهترین ارائه کنندگان میزبانی وب و هاست اشتراکی در جهان نیز نمیتوانند امنیتی در حد سرویس های سرور مجازی به مشتریان خود ارائه کنند . دلیل این موضوع نیز واضح است … ارائه کندگان سرویس های هاستینگ ، حد اقل ۱۰۰ وب سایت را بر روی هر سرور هاست میکنند که هر کدام از آن ها از CMS ها و سیستم های مدیریت محتوانی متفاوتی استفاده می نمایند . هر سیستم مدیریت محتوا نقاط ضعف مربوط به خود را دارد و هیچ CMS وجود ندارد که بتوان آن را ۱۰۰% امن و غیر قابل نفوذ نامید . از طرفی بسیاری از مشتریان سرویس های هاست اقدام به به روز کردن CMS های خود نمیکنند و آخرین پچ های امنیتی را بر روی سرویس خود نصب نمیکنند که این موضوع همیشه ریسک هک شدن یکی از مشتریان هاست را به دنبال دارد . هکر با هک کردن فقط یکی از هاست های روی سرور ، قادر خواهد بود تا به کل سرور و اطلاعات سایر مشتریان اجاره کننده هاست در آن سرور دسترسی پیدا کند و …

راه هایی برای کاهش این احتمالات وجود دارد ولی همیشه هکر ها و نفوذ گران ، یک قدم جلو تر از کارشناسان امنیتی هستند و احتمال وقوع هر اتفاقی در زمان استفاده از سرویس های اشتراکی وجود دارد . یکی از تکنیک های قدیمی هکر ها ، خرید هاست از سرویس دهنده ای است که سایت قربانی نیز بر روی همان سرور هاست شده است!!!

تکرار میکنیم که بسیاری از روش های نفوذ به هاست اشتراکی از طریق هک یک هاست دیگر از همان سرور ، توسط تکنیک هایی در هاست های معتبر و معروف غیر ممکن است ولی کسانی که امنیت یک فاکتور خیلی مهم برایشان محسوب میشود انتخاب بهتری نیز دارند : سرور مجازی VPS

امنیت سرور مجازی VPS :

در سرور مجازی کل سیستم عامل در اختیار شماست و به جز وب سایت های شما ، سایت دیگری در آن وجود نخواهد داشت . تنها شخصی که به سرور دسترسی دارد شما هستید و دست شما در بستن بسیاری از فانکشن های php و بلاک کردن و دان کردن سرویس های غیر ضروری سرور باز است و میتوانید سرور خود را بر اساس نیاز های های خود کانفیگ و امن نمایید . در صورت به روز نگه داشتن سیستم عامل سرور و کلیه سرویس ها و پکیج ها و همچنین به روز بودن سیستم مدیریت محتوا و از طرفی عدم استفاده از نرم افزار های مجهول و با ساپورت ضعیف ، احتمال هک شدن سرویس سرور مجازی شما بسیار بسیار پایین خواهد آمد . در نظر داشته باشید که امنیت یک مقوله نسبی است و وب سایت های بسیار بزرگ و معروف امنیتی نیز هر از گاهی هک میشوند! ولی با رعایت موارد فوق ، این احتمال را تا نزدیک ۰ کاهش خواهید داد

موفق باشید

ssh-e1451997599676

۱- اگر روی سرور شما nano نصب نمی باشد اول با دستور زیر اقدام به نصب nano نمائید.

yum install nano

برای تغییر پورت ssh باید فایل sshd_config را در سرور خود ویرایش نمایئد، برای این منظور می توانید از دستور زیر استفاده نمائید:

nano  /etc/ssh/sshd_config

پورت ssh برای سرور های لینوکس بصورت پیش فرض ۲۲ می باشد، به همین خاطر در فایل مربوطه شما خط زیر را مشاهده خواهید کرد:

#Port 22

حال می بایست عبارت مربوطه را به شرح زیر تغییر دهید:

Port 965

برای ذخیره کردن Ctrl +X و Y

و در پایان

service sshd restart

  • تاریخ : 27th سپتامبر 2016
  • موضوع : کانفبگ mysql
  • بازدید : 2,517 views

آموزش نصب MongoDB در سرور لینوکس CentOS

دیتابیس سرور MongoDB یک برنامه راه اندازی و ساخت دیتابیس بسیار سریع و کارامد متن باز و Open Source است که تحت زبان برنامه نویسی C++ نوشته شده است . بر اساس ادعای تولید کنندگان این نرم افزار ، سرعت MongoDB بالا تر از نسخه های MySQL است و مصرف منابع آن نیز به شکل قابل توجهی کمتر است . در ادامه مقاله به آموزش نصب MongoDB می پردازیم .

mongodb

آموزش نصب MongoDB در سرور لینوکس CentOS

با وجود پکیج های Repo برای نصب MongoDB روی لینوکس های RHEL مانند CentOS و Red Hat کار سختی در پیش ندارید . برای نصب آخرین نسخه از MongoDB روی لینوکس CentOS ابتدا باید یک فایل Repo در مسیر زیر ایجاد کنید :

etc/yum.repos.d/mongodb.repo

فایل را ویراش کرده و اطلاعات زیر را در آن ذخیره میکنیم :

نسخه های ۶۴ بیتی :

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/
gpgcheck=0
enabled=1

نسخه های ۳۲ بیتی :

[mongodb]
name=MongoDB Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/
gpgcheck=0
enabled=1

پس از ذخیره فایل ، با اجرای دستور زیر ، آخرین نسخه MongoDB روی سرور لینوکس RHEL شما نصب خواهد شد :

sudo yum install mongodb-org

برای نصب یک ورژن خاص از MongoDB میبایست به جای دستور فوق دستورات زیر را اجرا کنید . در اینجا ورژن ۲.۶.۱ از MongoDB مورد نظر است :

sudo yum install mongodb-org-2.6.1 mongodb-org-server-2.6.1 mongodb-org-shell-2.6.1 mongodb-org-mongos-2.6.1 mongodb-org-tools-2.6.1

در صورتی که ورژن های قدیمی تر MongoDB مورد نظر شما هستند ، میبایست MongoDB را در فایل yum.conf استثنا کرده و از آپدیت شده به آخرین ورژن توسط دستور yum update جلوگیری کنید . برای این منظور خط زیر را در فایل yum.conf اضافه کرده و فایل را ذخیره کنید :

exclude=mongodb-org,mongodb-org-server,mongodb-org-shell,mongodb-org-mongos,mongodb-org-tools

نصب ماژول PHP Mongo در سرور لینوکس

برای نصب PHP Module مربوط به MongoDB کافی است تا دستور زیر را در SSH اجرا کنید :

pecl install mongo

در نهایت باید مقدار extension = mongo.so را داخل فایل php.ini اضافه کرده و وب سرور یا اجرا کننده php را یک بار ریستارت کنید .

بعد از نصب موفقیت آمیز MongoDB روی سرور ، ابتدا سرویس MongoDB را در استارت آپ قرار داده و سپس آن را استارت میکنیم :

sudo chkconfig mongod on

sudo mongod start

آموزش نصب MongoDB در سرور لینوکس Ubuntu

نصب MongoDB روی توزیع های Ubuntu و Debian نیز به سادگی انجام میشود . برای آموزش نصب MongoDB روی سرور های لینوکس توزیع دبیان و اوبونتو مقاله های زیر را مطالعه کنید :

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-debian/

http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/

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

۱- از رمز های قوی و ترکیبی برای آدرس ایمیل ، رمز هاست ، رمز ناحیه کاربری سرویس دهنده و رمز مدیریت محتوا استفاده کنید :
مثلا :

۶sY(2%27WS^2t

۲-از افزونه ها یا قالب های نال شده استفاده نکنید . نالر ها معمولا یک راه نفوذ برای هک یا ارسال ایمیل از طریق هاست شما برای خود ایجاد می کنند تا به مقاصد تجاری دست یابند . درصورتیکه بتوانید تک تک فایل های این افزونه یا قالب ها را بررسی کنید توصیه می شود استفاده کنید .
۳- فقط از سایت اصلی توسعه دهنده گان افزونه ها را دانلود و نصب نمایید .
۴- دسترسی ثبت نام به صورت پیشفرض در برخی اسکریپت ها فعال هست ، اگر نیاز به این گزینه ندارید حتما غیر فعال کنید یا در صورت لزوم دسترسی یوزر های ثبت نام شده را بر روی مشترک قرار دهید .
۵- پسورد دیتابیس قوی انتخاب نمایید و درصورتیکه نیاز به اتصال ریموت به دیتابیس ندارید قابلیت اتصال ریموت را غیرفعال ک نید .
۶- سطح دسترسی فایل کانفیگ مدیریت محتوا را به ۴۰۰ تغییر دهید.
۷- آدرس پوشه ادمین را تغییر دهید یا اینکه بر روی آن از طریق فایل منیجر هاست پسورد ست کنید .
۸- درصورتیکه در هاست شما امکانی نظیر آپلود عمومی وجود دارد پسوند های قابل آپلود را به عکس و فایل های آرشیوی نظیر zip محدود نمایید.
۹- سطح دسترسی فایل های هاست باید ۶۴۴ و پوشه ها ۷۵۵ باید باشد ، اگر غیر از این هست به هاستینگ خود اطلاع دهید.
۱۰- اسکریپت خود را همیشه به روز نگاه دارید.
۱۱- پلاگین های امنیتی را برای اسکریپت خود و فقط از سایت اصلی توسعه دهنده اسکریپت دانلود و نصب نمایید .
۱۲- پیشوند پیشفرض دیتابیس را تغییر دهید . ( به عنوان مثال در وردپرس به صورت پیشفرض wp هست که بهتر است به مواردی دیگر تغییر دهید )
۱۳- کد زیر را در htaccess خود قرار دهید تا از دسترسی سایرین به تغییر htaccess سایت شما جلوگیری شود

<Files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</Files>

۱۴- قابلیت مشاهده لیست فایل ها در دایرکتوری ها را غیرفعال کنید ( با قراردادن کد زیر در htaccess )

Options All -Indexes

۱۵- از اسکریپت injection جلوگیری کنید ! ( کد زیر را در فایل htaccess قرار دهید )

# protect from sql injection
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

ارور اینترنال سرور ارور ( internal server error – error 500 ) یا خطای شماره ۵۰۰ یک خطای عمومی با احتمالات بالا می باشد !

ما در اینجا تمام احتمالات را برای شما بازگو می کنیم.

۱- اول از همه حالت دیباگ اسکریپت خود را فعال کنید ، اگر فعال کردید و تغییری حاصل نشد به مراحل بعدی بروید

۲- ممکن است اشکال از htaccess باشد ، تعریف برخی از مقادیر php value در htaccess موجب این رخداد می شود . برای بررسی این مورد فایل htaccess را یک بک آپ از آن بگیرید و سپس آنرا حذف کرده و تست نمایید

۳-  سطح دسترسی فایل های php ، باید همه فایل های php سطح دسترسیشان ۶۶۴ باشد ، فایل کانفیگ ۴۰۰ می تواند باشد.

۴- وقتی که در قالب یک تابع فراخوانی شود که در اسکریپت از پیش تعریف نشده باشد یا پیش نیاز یک افزونه دارد این مشکل رخ می دهد ، از طریق phpmyadmin قالب را تغییر دهید یا اینکه یک قالب خام در پوشه قالب اکسترکت کنید

۵- ممکن است ایراد از افزونه ای باشد که یک تابع فراخوانی کرده که در اسکریپت شما هنوز تعریف نشده است .  پس بهتر است از طریق phpmyadmin افزونه ها را غیرفعال کنید.

۶- ممکن است مصرف رم یا سی پی یو اکانت هاست شما فول شده باشد ، از سرویس دهنده خود بخواهید این مورد را بررسی کند .

۷- {دسترسی مدیر سرور} : مقدار gid و uid پوشه مربوط به این یوزر و نیز پوشه Public_html را چک کنید .

۸- {دسترسی مدیر سرور} : سطح دسترسی پوشه مربوط به این یوزر و نیز پوشه Public_html را چک کنید .

۹-  مقدار php memory را افزایش دهید . اگر دسترسی ندارید از مدیر سرور بخواهید ، { دسترسی مدیر سرور } : از درون فایل php.ini یوزر مربوطه یا ورژن انتخابی یا فایل اصلی سرور این مورد را افزایش دهید . مقدار ۱۲۸ الی ۲۵۶ برای سرویس میزبانی معمولی پیشنهاد می شود .

۱۰- راه یکی مانده به آخر ! از فایل کانفیگ اسکریپت یک نسخه روی رایانه کپی کنید ، سپس فایل های اصلی اسکریپت را ( نسخه خام ) اکسترکت نموده در همان مسیر اصلی

۱۱- و راه آخر ! اگر مشکل با موارد فوق حل نشد شما بسیار بدشانس هستید و تیم کانفیگ سرور در این مورد می تواند با دریافت هزینه مناسب شما را یاری کند . در این راه آخر شما باید روی یک پوشه دیگر اسکریپت خام را نصب کنید ، تیبل های مربوط به مطالب و کاربران و کامنت ها را منتقل کنید . پوشه فایل ها را منتقل کنید .

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

در صورتیکه به هر دلیلی از داخل کنترل پنل نتوانستید لاگین کنید و آی پی را بلاک نمایید برای بلاک آی پی ( اضافه کردن به csf.deny ) دستور زیر را اجرا کنید ( آی پی مد نظرتان را بازنویسی کنید )
دستور -d به این منظور تعریف شده است .

csf -d 192.168.1.7

برای ریدایرکت آدرس قدیم به آدرس جدید در nginx از دستور زیر استفاده نمایید

    server_name www.old.iranpage.net old.iranpage.net;
    rewrite ^ http://new.iranpage.net$request_uri?;

برای فعال کردن فورس دانلود ( اجبار مرورگرها به دانلود ) کافیست تا در تنظیمات nginx یوزر مربوطه کد زیر را قرار دهید.
مثال زیر برای فایل mp3 هست ، برای پسوند دلخواه آنرا بازنویسی کنید

location ~*(.*\.mp3){
    types { application/force-download .mp3;}
    default_type application/force-download;
}

پس از اضافه کردن service nginx restart را بزنید

بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین: یکی از بزرگ ترین معضلات مدیران سرور های اشتراکی لینوکس، بهینه کردن MySQL از طریق تنظیمات فایل my.cnf است. در صورتی که این مقادیر به صورت صحیح و حرفه ای ست شده باشند، فشار MySQL به سرور به طور قابل ملاحظه ای کاهش یافته و سرعت لود صفحات نیز بالا تر خواهد رفت.

MySQL.svg-1-1024x530

بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین

با توجه به اینکه دایرکت ادمین در توزیع های مختلف لینوکس قابل نصب و اجراست، نحوه بهینه سازی MySQL از طریق فایل کانفیگ my.cnf را به صورت مجزا در ۲ توزیع اصلی RHEL و Debian Based ها بررسی میکنیم.

بهینه سازی my.nf در سرور هالی لینوکس CentOS

هنگامی که mysql (4 + 5) نصب میشود به طور پیش فرض دارای یک فایل my.cnf است که اگر شما از رم ۲ گیگابایت به بالا استفاده کنید باعث می شود MySQL کمی سریعتر اجرا شود .

cp f /usr/share/mysql/mylarge.cnf /etc/my.cnf

با توجه به سخت افزار شما، فایلی به نام my-huge.cnf یا my-medium.cnf نیز وجود دارد . محتویات این فایل ها را بررسی کنید.

نکته ۱ : گزینه log-bin به طور پیش فرض فعال است که به سرعت از فضای دیسک استفاده میکند، توصیه میشود که خط log-bin را در فایل /etc/my.cnf از حالت کامنت خارج کنید ( اگر وجود داشته باشد )

نکته ۲ : به فایل /etc/my.cnf قدیمی خود توجه داشته باشید ، اگر گزینه innodb_file_per_table=1 را در این فایل دارید مطمئن شوید که در فایل جدید نیز این تنظیمات وجود داشته باشد. به طور مشابه اگر در فایل قدیمی شما این گزینه فعال نیست، در فایل جدید هم نباید فعال باشد. اگر فایل my.cnf جدید دارای تنظیمات مختلفی برای innodb_file_per_table باشد، ممکن است اطلاعات شما را از بین ببرد.

مطمئن شوید که قبل از ایجاد هرگونه تغییرات در my.cnf ، از فایل های .sql به طور کامل بک آپ تهیه بگیرید.

Debian/FreeBSD

ما در حال حاضر برای این سیستم عامل ها فایل my.cnf بهینه سازی شده نداریم.

CentOS  و  MySQL 5.6

MySQL جدید نصب شده ممکن است شامل فایل های my-*.cnf files نباشد

ما در این آموزش چند فایل از MySQL 5.5 که به نظر می رسد با MySQL 5.6 کار میکند اضافه کرده ایم . برای مثال :

cp /etc/my.cnf /etc/my.cnf.old
wget -O /etc/my.cnf http://files.directadmin.com/services/all/mysql/my-huge-5.5.cnf

MySQL 4.x

اگر شما از mysql 4 استفاده می کنید ( نه mysql 5  ) میتوانید از کد زیر در فایل /etc/my.cnf استفاده کنید :

vi /etc/my.cnf [ENTER]

با فشردن دکمه I حالت insert  را فعال کرده و سپس past کنید:

[mysqld]
local-infile=0
skip-locking
query_cache_limit=1M
query_cache_size=32M
query_cache_type=1
max_connections=500
interactive_timeout=100
wait_timeout=100
connect_timeout=10
thread_cache_size=128
key_buffer=16M
join_buffer=1M
max_allowed_packet=16M
table_cache=1024
record_buffer=1M
sort_buffer_size=2M
read_buffer_size=2M
max_connect_errors=10
# Try number of CPU’s*2 for thread_concurrency
thread_concurrency=2
myisam_sort_buffer_size=64M
server-id=1

[safe_mysqld]
err-log=/var/log/mysqld.log
open_files_limit=8192

[mysqldump]
quick
max_allowed_packet=16M

[mysql]
no-auto-rehash
#safe-updates

[isamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[myisamchk]
key_buffer=64M
sort_buffer=64M
read_buffer=16M
write_buffer=16M

[mysqlhotcopy]
interactive-timeout

از دکمه های Ctrl-C برای خروج از حالت insert و سپس برای ذخیره شدن و خروج از فایل از دکمه های  Shift-Z استفاده کنید. اکنون mysqld را ری استارت کنید :

در لینوکس Redhat دستور زیر را اجرا کنید:

/sbin/service mysqld restart

در FreeBSD دستور زیر را اجرا کنید :

/usr/local/etc/rc.d/mysqld restart

این یک آموزش کلی و Basic برای بهینه سازی MySQL و فایل my.cnf در دایرکت ادمین و سرور های مبتنی بر Directadmin بود، کلیه مقادیر مشخص شده در مقاله فوق، نسبی و بر اساس کانفیگ سخت افزاری سرور و نوع کاربری آن متغیر است و کپی و پیست کردن محض آن ها نه تنها کمکی به بهینه سازی MySQL در سرور نمیکند، بلکه در مواردی باعث ایجاد اختلال در عملکرد سرور خواهند شد. اگر مبتنی هستید یا دقیقا متوجه مفاهیم آموزش داده در این سایت نشده اید، از دستکاری و کانفیگ سرور های مهم و با اهمیت اکیدا خود داری کنید و بهینه سازی MySQL را به افراد با تجربه و واجد شرایط بسپارید. ایجاد تغییرات اشتباه در فایل my.cnf حتی میتواند باعث Crash کردن MySQL و Corrupt شدن جداول دیتبایس های Innodb شده که در مواردی غیر قابل بازگشت است.