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

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

چگونه برای امنیت بیشتر پورت 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 و بلاک کردن و دان کردن سرویس های غیر ضروری سرور باز است و میتوانید سرور خود را بر اساس نیاز های های خود کانفیگ و امن نمایید . در صورت به روز نگه داشتن سیستم عامل سرور و کلیه سرویس ها و پکیج ها و همچنین به روز بودن سیستم مدیریت محتوا و از طرفی عدم استفاده از نرم افزار های مجهول و با ساپورت ضعیف ، احتمال هک شدن سرویس سرور مجازی شما بسیار بسیار پایین خواهد آمد . در نظر داشته باشید که امنیت یک مقوله نسبی است و وب سایت های بسیار بزرگ و معروف امنیتی نیز هر از گاهی هک میشوند! ولی با رعایت موارد فوق ، این احتمال را تا نزدیک ۰ کاهش خواهید داد

موفق باشید

  • تاریخ : 27th سپتامبر 2016
  • موضوع : کانفبگ mysql
  • بازدید : 3,460 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/

بهینه سازی 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 شده که در مواردی غیر قابل بازگشت است.