Laravel یکی از فریم ورک های زبان پی اچ پی است که برای توسعه اپلیکیشن های وب در نظر گرفته شده است و بر پایه MVC کار می کند. فریم ورک لاراول، برنامه نویسی برنامه های کاربردی تحت وب با زبان پی اچ پی را سادهتر می نماید و کمک بسزایی برای انجام پروژه های PHP و توسعه آسان آنها می کند. فریم ورک Laravel بر روی اجزای مختلف فریم ورک symfony ساخته شده است و به برنامه شما پایهای بزرگ از کد های قابل اعتماد و تست شده می دهد. لاراول مجموعه ای از بهترین راه حل ها با سینتکس پر معنا و خلاقانه را ارائه میکند که به درستی انجام می پذیرند. لاراول توسط آسان سازی کارهای معمول مانند احراز هویت، روتینگ، sessionها ، کار با بانکهای اطلاعاتی و … که تقریبا در تمامی پروژه های تحت وب استفاده میشوند، مسائل و مشکلات ناشی از توسعه را هم برای توسعه دهنده و هم برای کارفرما کاهش می دهد. لاراول، سیمفونی، کیک پی اچ پی و کد ایگنایتر از محبوب ترین فریم ورک های زبان PHP هستند که بررسی میزان محبوبیت آنها در گوگل و سایر جیتجوگر ها ترند حاکی از رشد روز افزون فریم ورک Laravel است.
حالا چرا Laravel
بروزرسانی و یادگیری آسان
آسان سازی کارهای معمول در روند برنامه نویسی نظیر احراز هویت، روتینگ، جلسات و کَش
راه اندازی سریع و آسان محیط ها و روابط چندگانه
بهره گیری از ریموت کامپوننت
محدود کردن Eloquent با دستورات ساده
بهبود سرعت و افزایش ۱۰۰ درصدی سرعت مسیرها
دلپذیر کردن فرآیند توسعه برای توسعه دهندگان بدون به خطر انداختن قابلیتهای برنامه
استفاده از شیوه استاندارد Bundle در نسخه های اولیه و استفاده از پکیج ها در نسخه جدید
اجرای آزمایش های واحد متعدد با دستورات بسیار ساده
دسترسی ساده به دیتابیس و سهولت در تغییر وکنترل کدها و بروز رسانی و توسعه برنامه ها
استفاده از موتور تپملیت Blade
خیلی وقتها توی سایتمون مطالبی میزاریم که دوره زمانی داره ، مثلا تو یه سایت خبری ، یه خبر موقت میخوایم بزاریم که بعد از چند ساعت حذف میشه ، یا میخوایم یه تخفیف رو بصورت موقت اطلاع رسانی کنیم ، خب نیاز هست بعد از چند روز این خبر موقت یا این تخفیف چند روزه رو از لیست مطالب سایتمون حذف کنیم ، خب اگه بخوایم بصورت دستی حذف رو انجام بدیم ممکنه زمان بر باشه.
من خودم با استفاده از کد زیر تونستم این مشکل را حل کنم ، با قرار دادن این قطعه کد در حلقه loop در فایل post.php زیر نوشته جدید در وردپرس بخش زمینه های دلخواه گزینه تاریخ انقضا اضافه میشه ، که میتونین اونجا یه تاریخ تنظیم کنین:
<?php
if (have_posts()) :
while (have_posts()) : the_post();
$expirationtime = gregdate(“Y-m-d”,get_post_custom_values(‘expiration’));
if (is_array($expirationtime)) {
$expirestring = implode($expirationtime);
}
$secondsbetween = strtotime($expirestring)-time();
if ( $secondsbetween > 0 ) {
// For example…
the_title();
the_excerpt();
}
endwhile;
endif;
?>
حالا برای پست هایی که میخواین بعد از مدت زمان خاص نمایش داده نشه از قسمت زمینه دلخواه به صورت زیر زمان مورد نظرتونو وارد کنین
نام زمینه دلخواه :expiration
مقدار زمینه دلخواه :
1392-05-10
البته با افزونه ها هم میشه اینکار کرد ، در لیست زیر نمونه ای از افزونه ها که چنین کاری رو برامون انجام میدن رو ارسال کردم :
انتخاب یک سرویس ایمیل مارکتینگ خوب ، تاثیر زیادی در افزایش فروش محصولات شما داره ، امروزه ارسال ایمیل هدفمند ، یکی از بهترین روشهای بازاریابی دیجیتال هست .
من در این مقاله سعی کردم ، 7 سرویس دهنده ایمیل مارکتینگ رو برای شما دنبال کننده های همیشگی پیشگام وب معرفی و آنالیز کنم.
email-marketing-for-bars
کم و بیش در کنفرانس های مختلف، کتاب های گوناگون، و وب سایت های بازاریابی و بسیاری از جاهای دیگر نام “ایمیل مارکتینگ” یا “Email Marketing” یا “بازاریابی ایمیلی” را شنیده اید.
اگر بخواهیم تعریف ایمیل مارکتینگ را به زبانی ساده بیان کنیم باید بگوییم که هر ایمیلی که محتوای آن به نحوی کالا یا خدمات شما را تبلیغ کند و یا هر حرکتی در راستای افزایش فروش شرکت تان داشته باشد می تواند در زمره ی ایمیل مارکتینگ قرار بگیرد.
انتخاب بهترین سرویس دهند ایمیل مارکتینگ بسیار مهم است چرا که:
ایمیل مارکتینگ ابزاری آسان برای مدیریت ارتباط مستقیم با مشتریان است.
شما میتوانید از نرمافزارهای OptinMonster (نرم افزارهایی که بازدید کننده را به دنبال کننده تبدیل میکنند)استفاده کنید و تعداد بیشتری مشتری داشته باشید اما صرفاً این تعداد نمیتواند شامل بازدید کننده ها ی واقعی شما و کسانی که واقعا علاقه به کمپین شما دارند باشد، در نتیجه ایمیل دلیوری شما را پایین می آورد.
یک سرویس ایمیل مارکتینگ خوب به شما امکان ساخت ایمیل با بازدید و بازده بالا میدهد همینطور امکان کنترل و گروهبندی مشتریان و ارائه آمار بازدید از جمله خدماتی است که یک سرویس دهنده ایمیل مارکتینگ ارائه میدهد.
یکی از مهمترین نکات و نقاط قوت یک سرویس دهنده ی ایمیل مارکتینگ خوب اسپم نشدن ایمیل های شماست و هدایت ایمیل ها به پوشه inbox می باشد.
در ادامه به معرفی بعضی از بهترین سرویس دهندهای ایمیل مارکتینگ و رقابت بین آنها میپردازیم.
۱-Constant Contact
یکی از بزرگترین و رو به رشدترین سرویس دهندهای ایمیل مارکتینگ Constant Contact است. استفاده از آن بسیار آسان بوده به ویژه برای تازه کاران مناسب است.
توسط این سرویس شما میتوانید به آسانی لیستی از ایمیل ها، مشتریان، قالب ایمیلها و … مدیریت کنید.
Constant Contact به شما امکان دسترسی آسان به امار، گزارش ها، اشتراک گذاری شبکههای اجتماعی،پوشه عکس و ۱GB فضا برای فایلهای شخصی ارائه میکند.
اگر میخواهید به زودی مانند یک متخصص در امور بازار یابی با ایمیل مارکتینگ آشنا شود میتوانید در سمینارها و آموزشهای آنلاین Constant Contact شرکت کنید.
Constant Contact به مدت ۶۰ روز به صورت رایگان و آزمایشی (Trial) به ارائه سرویس پرداخته و قیمت های بسته های این سایت از ۲۰ دلار در ماه شروع می شود.
۲-AWeber
یکی از معروفترین سرویس دهندههای ایمیل مارکتینگ، AWeber است، این سرویس دهنده به اسانی با وردپرس هماهنگ شده و استفاده از قالبهای آماده، مدیریت لیست و پاسخگوی خودکار از جمله ویژگیهای این سرویس دهنده است.
پشتیبانی در AWeber به صورت live chat، تلفنی و ایمیل ارائه می شود.
قیمتهایAWeber از ۹$ در ماه شروع میشود. این سرویس دهنده نیز در ابتدا ۳۰ روز به صورت رایگان و آزمایشی سرویس ارائه میدهد.
۳-ConvertKit
یکی دیگر از سرویس دهنده های ایمیل مارکتینگ ConvertKit است که بلاگرهای حرفه ای، نویسندهها و بازاریابان از آن استفاده میکنند.در عین سادگی از قدرت بالایی برخوردار است.
فرم ثبت نام ایمیل و بروز رسانی محتوا توسط ConvertKit به اسانی امکان پذیر بوده و میتوانید لیست مشتریان خود را به گروههای مختلف دسته بندی کنید.
پشتیبانی در ConvertKit توسط ایمیل انجام شده و قیمت ها در ConvertKit از ماهی ۲۹$ شروع شده و یک ماه قابلیت استرداد وجه در صورت عدم رضایت دارد.
۴-GetResponse
یکی از راههای بازاریابی توسط ایمیل استفاده از سرویس دهنده ایمیل مارکتینگ پر طرفدار GetResponse است. برای تجارتهات کوچک و همینطور تازه کاران گزینه ای مناسب میباشد. این سرویس همراه بسیاری از ابزار کارامد بازاریابی اتوماتیک ارائه میگردد که به شما امکان ساخت کمپینهای هوشمند توسط یک سیستم Drag & Drop میدهد، علاوه بر آن میتوانید گروههای از مشتریان ساخته و محتوای طراحی شده مخصوص برای هر یک از گروهها بفرستید.
این ابزار به شما امکان ساخت کمپینهای مفید جهت پیشرفت اهدافتان را میدهد.
از جمله دیگر امکانات GetResponse فرمهای زیبا و رسپانسیو، لندینگ پیج، سیستم پاسخگوی اتوماتیک، قابلیت اتصال با نرم افزارها از جمله OptinMonster, SalesForce,Google Docs, ZenDeskو … میباشد.
پشتیبانی در GetResponse توسط تلفن،live chat و میل امکان پذیر است و بخشهای پر از آموزشهای مفید شامل فیلم ها، وبینارها و راهنمایی ها وجود دارد.
GetResponse یک ماه به صورت رایگان و آزمایشی در اختیار کاربران قرار گرفته و پس از آن با قیمت ۱۵$ در ماه ارائه میشود.
۵-MailChimp
MailChimp یکی از معروفترین سرویس دهندههای ایمیل مارکتینگ است.رابط کاربری بسیار ساده همراه ابزار بسیار کارامد و پشتیبانی منحصر به فرد از ویژگیهای MailChimp میباشد. MailChimp به خوبی با وردپرس ،مجنتو،Shopify و بسیاری دیگر از سیستم های مدیریت محتوا سازگار می باشد و برای ارسال خبرنامه های سایت خود ازین سرویس دهنده می توانید استفاده کنید.از جمله امکاناتی کهMailChimp ارائه میکند یک سیستم سازنده ایمیل ساده، به همراه مشخص کننده ی تگ، پاسخگوی خودکار و دسته بندی مشتریان در گروههای مختلف میباشد.
در MailChimp می توانید منطقه مورد نظر و حتی ساعت دریافت ایمیل توسط مشتری را تنظیم کنید که یک قابلیت منحصر به فرد است.
پشتیبانی توسط لایو چت ، فیلمها و آموزشهای بسیار زیاد ارائه میشود.
MailChimp یه پیشنهاد فوق العاده ارسال ۱۲۰۰۰ ایمیل برای بیشتر از ۲۰۰۰ کاربر ارائه میکند،این پیشنهاد تنها ۱۰$در ماه هزینه دارد.
۶- Campaign Monitor
یکی دیگر از سرویس دهندهای پر طرفدار ایمیل مارکتینگ Campaign Monitor است. هر چیزی که شما برای پیاده سازی یه کمپین و حتی بیشتر از آن نیاز داشته باشید به شما میدهد.
سیستم پیاده سازی ایمیل به صورت Drag & Drop بسیار زیبای درد ،به شما اجازه استفاده از قالبهای حرفهای و ساخته شده توسط خودتان را میدهد.
همینطور به شما ابزار ساخت و دسته بندی و گروه بندی مشتریان را به صورت Drag & Drop ارائه میکند.
پشتیبانی ۲۴ ساعت در ۷ شبانه روز است و توسط فروم و ایمیل انجام میشود.
مشتریان برتر میتواند توسط تلفن هم از پشتیبانی برخوردار باشند.
داکیومنت آموزش مرحله به مرحله برای شروع کار نیز در این سرویس دهنده ارائه موجود است.
قیمتها از ماهی ۹$ شروع میشود.
۷-ActiveCampaign
ActiveCampaign بازاریابی ایمیلی و اتوماتیک و CRM و فروش را تلفیق میکند.تمامی ابزاری که شما برای یک کمپین بازاریابی هوشمند نیاز دارید در این سرویس دهنده ایمیل مارکتینگ فراهم هست.
ActiveCampaign همراه ویرایش کننده قالب بسیار زیبا و مناسب برای موبایل و فرم ثبت نام است،به شما اجازه میدهد مشتریان را بر اساس فعالیتهایشان دسته بندی کنید.همچنین قابلیت ارسال اساماس برای مشتریان وجود دارد تا کمپین شمارا فالو کنند .
برنامههای ActiveCampaign از ماهی ۹$ شروع میشود.شما میتوانید درخواست یک دمو با ویژگیهای محدود برای تست کردن بدهید تا قابلیتهای بیشتر این سرویس دهنده را بررسی کنید.
خطا ۵۰۳ Service Unavailable زمانی رخ می دهد که سروری که سایت شما یا سایتی که مشاهده میکنید در آن نگهداری می شود دارای مشکل در منابع است.
وقتی تعداد درخواستها بیشتر از حد منابع سرور باشد ، سرور توانایی رسیدگی به درخواسهای جدید را ندارد.
کمبود میزان منابع CPU و یا RAM و یا عدم ارائه مجوز استفاده بیشتر از process و threads ها به کاربران در سرور به جهت انجام پروسه های درخواستی یکی دیگر از دلایل بروز این خطا در هنگام مشاهده سایت می باشد.
دلیل اتفاق افتادن خطای 503 Service Unavailable
از لحاظ فنی، خطای 503 Service Unavailable وقتی اتفاق می افتد که پردازش فایل های PHP در هنگام اجرای اسکریپت ناتمام مانده یا اصطلاحا crash میکند. در این حالت آپاچی یا به طور کلی وب سرور شما، پاسخ معتبری از PHP دریافت نکرده و فرض میکند که سرویس PHP-FPM در دسترس نیست.
و اما سوالی که پیش می آید این است که چه مسئله ای ممکن است منجر به بروز آنچه در بالا برای شما شرح دادیم شود. این مسئله میتواند دو دلیل اصلی داشته باشد. اول اینکه در سرویس های میزبانی، منابعی که در اختیار سایت کاربران قرار میگیرد، محدود هستند. بنابراین هرگاه سایت شما مثلا به دلیل بازدید زیاد، یا سنگین بودن اسکریپت های اجرایی، به این محدودیت برخورد کند، ممکن است با چنین خطایی مواجه شوید. و اما دلیل دوم که ممکن است مرسوم تر هم باشد، وجود کدهای غیر بهینه و باگ در ساختار و کدنویسی افزونه ها یا قالب سایت شماست.
شکل های مختلف خطای 503
خطای 503 گرچه پیام واحدی را به کاربر اعلام میکند ولی ممکن است در سیستم های مختلف به شکل های مختلفی خود را به نمایش بگذارد. برخی حالات خطای 503 را در زیر مشاهده میکنید :
503 Service Unavailable
503 Service Temporarily Unavailable
Http/1.1 Service Unavailable
HTTP Server Error 503
Service Unavailable – DNS Failure
503 Error
HTTP 503
HTTP Error 503
Error 503 Service Unavailable
رفع خطای 503 Service Unavailable
اولین چیزی که باید مد نظر داشته باشید
اولین نکته ای که باید در رابطه با خطای 503 مد نظر داشته باشید این است که اگر هیچ نوع تغییری در سایت خود ایجاد نکرده اید و این خطا به صورت ناگهانی در سایت شما ایجاد شده، احتمال اینکه وبسایت شما به علت افزایش ترافیک، دچار کمبود منابع شده باشد زیاد است. این را برای نگران کردن شما نمیگوییم ولی وبسایت ها در صورت زیر حمله قرار گرفتن نیز به علت کمبود منابع ممکن است با چنین مشکلی روبرو شوند. در هر یک از این حالات با کاهش بار روی سایت، عموما خطا به صورت خود به خود برطرف خواهد شد.
اگر مشکل شما به آنچه در بالا شرح داده شد شبیه است و بدون اعمال هر نوع تغییری در سایت برای شما پیش آمده، بهتر است که ابتدا با پشتیبان هاست خود مشورت کنید و سپس در صورت حصول اطمینان در مورد کمبود منابع در سایتتان، نسبت به ارتقا پلن میزبانی خود اقدام کنید و یا در صورتی که وبسایت شما تحت حمله قرار گرفته است، میتوانید از از خدمات سرویسی همچون CloudFlare در رفع مشکل خود بهره بگیرید.
اما بجز این حالت، حالات دیگری هم وجود دارد. خصوصا اگر اخیرا اقدام به نصب افزونه ای جدید یا بروزرسانی یکی از افزونه های سایتتان کرده اید و یا قالب سایتتان را تغییر داده باشید (یا هر نوع سفارشی سازی و تغییر دیگر)، احتمال اینکه مشکلی در کدنویسی یکی از افزونه ها یا قالب سایتتان وجود داشته باشد بسیار زیاد است.
غیر فعال کردن افزونه ها
همانطور که اشاره کردیم، یکی از دلایل بروز خطای 503 Service Unavailable میتواند استفاده از افزونه های معیوب و غیر بهینه باشد. اگر میدانید که دقیقا پس از نصب چه افزونه ای، این مشکل در سایت شما ایجاد شده است که بسیار عالی! میتوانید بلافاصله به سراغ همان افزونه رفته و آن را از سایت خود حذف کنید ولی در صورتی که تغییرات زیادی در سایت اعمال کرده اید و از اینکه کدام افزونه باعث بروز مشکل در سایت شما شده مطمئن نیستید، لازم است که ابتدا همه افزونه های نصب شده در سایت را غیر فعال کنید. (پیش از ادامه دادن مطالعه و انجام مراحل فوق، توصیه میکنیم که از وبسایت خود یک بکاپ کامل تهیه کنید) برای غیر فعال کردن همه افزونه ها کافی است به شکل زیر عمل کنید :
توجه داشته باشید که اگر افزونه ای برای حالت تعمیر (maintenance) در سایتتان نصب کرده باشید ممکن است نمایش خطای 503 به علت فعال بودن این افزونه اتفاق افتاده باشد. (خصوصا اگر خطا فقط در سمت کاربری سایت اتفاق می افتد) بنابراین پیش از هر کاری این مسئله را بررسی کرده و در صورتی که چنین افزونه ای در سایتتان موجود بود، آن را غیر فعال و حذف کنید. در غیر این صورت برای غیر فعال کردن همه افزونه ها مراحل بعدی را دنبال کنید.
ابتدا با استفاده از FTP یا با مراجعه به فایل منیجر هاستتان به فولدر wp-content مراجعه کنید. فولدر plugins را یافته و نام آن را به نام جدیدی تغییر دهید. مثلا plugins-backup
فولدر دیگری با نام plugins در همین محل ایجاد کنید.
مجددا به بخشی که خطای 503 در آن رخ داده مراجعه کنید و بررسی کنید که خطا برطرف شده است یا خیر.
در این مرحله اگر خطا برطرف شده باشد، یعنی مشکل توسط یکی از افزونه ها ایجاد شده بوده. برای اینکه بتوانید افزونه ای که منجر به بروز خطا شده بوده را بیابید باید به شکل زیر عمل کنید.
مجددا با استفاده از فایل منجر یا کلاینت FTP به فولدر wp-contents مراجعه کنید.
فولدر plugins را که قبلا ایجاد کرده بودید، از هاست خود حذف کنید.
فولدر اصلی پلاگین ها را که تغییر نام داده بودید به حالت اولیه خود بازگردانید. مثلا اگر نام آن را به plugins-backup تغییر داده اید، نام آن را ویرایش کرده و مجددا به plugins تغییر دهید.
حالا به ناحیه مدیریت وردپرس مراجعه کرده و یک به یک شروع به فعال کردن افزونه ها کنید.
در اینجا پس از فعال کردن هر افزونه باید یک بار سایت را بررسی کنید و از عدم وجود خطای 503 اطمینان حاصل کنید. این عمل را تا جایی ادامه دهید که خطا مجددا در سایت ظاهر شود. در این حالت به آسانی میتوانید افزونه ای که منجر به بروز خطا در سایت شما شده را شناسایی کرده و آن را از سایت خود حذف کنید.
اگر این روش به شما در برطرف کردن خطای 503 Service Unavailable کمکی نکرد، به سراغ روش بعد بروید.
استفاده از یکی از قالب های پیشفرض وردپرس
خوب، حالا که به این مرحله رسیده اید یعنی در روش قبلی متوجه شده اید که مشکل سایت از افزونه ها سرچشمه نمیگیرد. در این مرحله لازم است که قالب فعلی سایت خود را غیر فعال کنید. برای این کار میتوانید به شکل زیر عمل کنید :
وارد فایل منیجر هاست خود شده و یا از طریق FTP به هاست متصل شوید.
به فولدر wp-content/themes مراجعه کنید.
قالب فعلی سایتتان را یافته و آن را روی کامپیوتر خود دانلود کنید. پس از دانلود کردن قالب میتوانید آن را از هاست حذف کنید. البته بجای انجام این کار میتوانید نام فولدر قالب را تغییر دهید و یا برای دقایقی آن را به حالت فشرده در بیاورید و سپس اقدام به حذف فولدر قالب کنید.
در اینجا اتفاقی که می افتد این است که اگر یکی از قالب های پیشفرض وردپرس روی سایت موجود باشد، احتمالا سایت شما به قالب پیشفرض سوئیچ میکند و یا در غیر این صورت، سمت کاربری سایت صفحه ای را نشان خواهد داد که میگوید قلب x در دسترس نیست. اما به هر شکل در این حالت اگر مشکل شما از قالب سایت بوده باشد، میبایست مشکل برطرف شده باشد و دسترسی شما به ناحیه مدیریت دوباره برقرار شده باشد.
در صورتی که مشکل شما با انجام این عمل برطرف شده، حالا میتوانید وارد ناحیه مدیریت سایتتان شده و قالب جدیدی را برای سایت انتخاب کنید تا همه چیز به حالت طبیعی خود بازگردد.
راستی فراموش نکنید که اگر در این مرحله، قالب اصلی سایتتان را به صورت زیپ شده در آورده باشید، حالا هر شخص فرصت طلبی با دانستن نام قالب، میتواند، آن را از هاست شما دانلود کند. بنابراین بدون معطلی فایل اضافه را پس از دانلود کردن، از هاست خود حذف نمایید.
اگر هیچ کدام نتیجه ای در بر نداشت
اگر از روش های بالا نتیجه ای حاصل نشد، خونسرد باشید. ابتدا در صورت امکان لاگ های خطای php را با دقت بررسی کنید.
در ادامه در صورتی که از لاگ های خطا نیز اطلاعات مفیدی کسب نشد، مراحلی که طی کرده اید را با پشتیبان هاستینگ خود در میان بگذارید و با آنها مشورت کنید. شاید آنها بتوانند در زمینه یافتن منشا این مشکل به شما کمک کنند. (و این را هم فراموش نکنید که اگر نیاز به کمک دارید، رفتار طلبکارانه به هیچ کس کمکی نخواهد کرد. بنابراین با روی خوش و با رفتاری حرفه ای مشکل خود را مطرح نمایید)
و در آخر، اگر از همه جا ناامید شدید و به نظر میرسید که دیگر هیچ راهی باقی نمانده است … از هاست خود یک بکاپ کامل تهیه کنید. کلیه اطلاعات موجود در وردپرس را برون ریزی کنید. فولدر wp-content خود را دانلود کنید. وردپرس را مجددا بر روی هاست نصب کرده و سپس با استفاده از اطلاعات برون ریزی شده و فولدر wp-content که از پیش، از آن بکاپ گرفته بودید، سایتتان را مجددا سر پا کنید.
امیدواریم که کار شما به مرحله آخر نکشد و بتوانید با همان دو مرحله اصلی (یا شاید 2.5 مرحله!) از دست این خطای آزار دهنده خلاص شوید.
سلام به همراهان همیشگی پیشگام وب امروز دوباره در خدمتتون هستیم با آموزش جدید
یکی از مشکلاتی که ممکنه در سرورهای لینوکسی بوجود بیاد ، بالارفتن لود سرور هست ، وقتی مدیر سرور میاد دستور top رو میزنه ، میبینه یا خدااا ، یه یوزری مصرف منابع رو بالا برده ، خب چیکار کنم تو چنین شرایطی؟
مثل خود من ، دیشب یه پیغام بالا بودن لود تو یکی از سرورها برام ایمیل شد ، به سرور ssh زدم
اولین کاری که میکنین ، کلید c را همون موقع که top وارد کردین رو بزنین تا نشون بده این مصرف منابع مربوط به کدم فایل این یوزر بوده
ممکن هست حملات DOS روی یک فایل خاص داشته ، مثلا اخیرا در سایتهای وردپرسی روی فایل xmlrpc.php حملات زیادی بود و با محدود کردن دسترسی این فایل مشکل رفع می شد.
اگه دیدین سرور داره میترکه و فعلا فرصت کافی برای بررسی مشکل ندارین با دستور کاربری زیر میتونین تمام پروسس هایی که مربوط به این یوزر هست را stop و kill کنین.
pgrep -U user | xargs kill -9
بعد میتونین log های سرور مربوط به این دامنه را بررسی کنین.
مسیر log های دامنه در دایرکت ادمین به شرح زیر هست:
/var/log/httpd/domains/
مسیر log های دامنه در سی پنل بصورت زیر هست:
/usr/local/apache/domlogs
ممکن هست بازدید بالایی داره ، یا درخواستهای زیادی روش هست یا روی این یزور حملات DOS یا حملات سایبری از مدلهای دیگش هست ، اگه دیدین تو log ها خبری نیست و درخواستی روی دامنه نمیاد ، مطمئن بشین که مشکل از دیتابیس آب میخوره ، احتمالا یه table خاص کرش کرده.
میتونین سریع به دیتابیس وصل شین و وضعیت process ها رو بررسی کنین و table که با مشکل مواجه هست repair کنین.
البته این مربوط به زمانی بود که زمانیکه دستور top رو زدین واقعا یه یوزر خاص باعث بالا رفتن لود سرور باشه ، اگه یوزر خاصی نبود، باید log های مسیر زیر رو بررسی کنین:
/var/log/messages
و با ابزار مانیتورینگ بصورت دقیق منبع بالارفتن لود رو پیدا کنین .
معمولا بکاپ گیری در وسط روز که روی سرور درخواستهای زیادی هم هست لود سرور و بالا میبره ، ترجیحا بکاپگیریهاتونو اخر شب انجام بدین.
اگر شما یک بازدید کننده اینترنتی باشین ، حتما براتون پیش اومده که یه سایت بازکنین و با خطا مواجه باشین.
یا اگه شما مدیر یک سایت اینترنتی باشین و موقع بازکردن سایتتون با خطا برخورد کنین ، حالتونو درک میکنیم ، حتما یه شوک حسابی بهتون وارد میشه ، ما در لییست زیر اطلاعاتی راجب خطاهای مختلف ارائه کردیم تا تو این مواقع بدونین مشکل از کجا آب میخوره؟?
دسته بندی کلی از کد های وضعیت خطا به دسته های 100 ، 200 ، 300 ، 400 و 500 تقسیم میشه. کد 100 به اطلاعات برنمیگرده ، کد های وضعیت دسته 200 به در خواست های معتبر مرور گر ها برگردانده می شود. کد های 300 برای انواع ریدایرکت می باشد. کد های 400 به خطاهای رخ داده در حین در خواست از سمت کاربر و کد های دسته 500 به خطاهای سمت سرور اشاره می کند.
200 – نشان میدهد یک در خواست موفق است و در پاسخ آن یک فایل برگردانده می شود.
201 – این کد در پاسخ موفقیت آمیز ساخت یک منبع جدید در سرور اشاره دارد مثل ساخت یک فایل
301 – این کد به یک ریدایرکت دائم در آدرس اشاره دارد. پس از این سایر درخواست ها بجای آدرس اولیه به آدرس ریدایرکت شده هدایت می شوند. به عبارتی دیگر محتوای در خواستی بطور دائم از آدرس فعلی به آدرس جدید منتقل شده است.
302 – این نوع از ریدایرکشن به این مفهوم است که محتوا در آدرس در خواستی وجود دارد ولی موقتا به آدرسی دیگر هدایت خواهید شد.
304 – این ریدایرکشن برای مکانیزم کش مرور گر ها کاربرد دارد. در هر درخواست به یک صفحه وب برای صرفه جویی در مصرف اینترنت و بار گزاری سریعتر صفحات بخشی از اطلاعات مانند عکس ها و برخی اسکریپت ها در حافظه مرور گر ذخیره می شود. در درخواست های بعدی تاریخ ذخیره شدن فایل با نسخه موجود آن در وب سرور مقایسه می شود و در صورت عدم انقضاء فایل در خواستی ، کد 304 از سمت سرور برگشت می خورد و فایل ذخیره شده در مرور گر نمایش داده می شود.
400 – آدرس در خواستی به سرور معتبر نمی باشد.
401 – آدرس در خواست شده نیاز به ارائه نام کاربری و کلمه عبور میباشد .
403 – اجازه دسترسی به محتوای در خواست وجود ندارد.
404 – فایل در خواست داده شده در مسیر اعلام شده وجود ندارد
500 – به معنی وقوع یک خطای داخلی در سرور است که معمولا در مواقع بروز رسانی نرم افزاری و یا اعمال تنظیمات رخ می دهد.
502 – این خطا معمولا زمانی رخ می دهد که Gateway بین سرور و مرور گر قادر به تکمیل فرآیند درخواست و پاسخ نبوده و معمولا به چند با تلاش از سمت کاربر مشکل حل می شود.
505 – در مواقعی که پروتکل http مورد استفاده از سمت مرور گر در سرور پشتیبانی نمی شود.
خطاهای سمت کاربر یا کدهای وضعیت از ۴۰۰ تا ۴۹۹، نتیجه ی درخواست های HTTP هستند که توسط نرم افزارهای HTTP سمت کاربر (مانند مرورگر وب) ارسال می شوند. گرچه این دست از خطاها به صورت معمول مربوط به طرف کاربر می باشند ولی آگاهی از اینکه کاربر با چه کد خطای مواجه شده است نیز به جهت امکان سنجی رفع آن از طریق ایجاد تغییرات در تنظیمات سرور، مفید واقع خواهد شد.
خطای های سمت سرور یا کدهای وضعیت ۵۰۰ تا ۵۹۹ نیز زمانی نمایش داده می شوند که مشکلی در تنظیمات وب سرور وجود داشته و یا وب سرور توانایی انجام درخواست مربوطه را ندارد.
راهکارهای رفع مشکل مربوطه :
زمانیکه از مرورگر به جهت امتحان وب سرور استفاده می کنید، به خاطر داشته باشید که حتما بعداز ایجاد هرگونه تغییر در سرور به جهت مشاهده نتیجه، مرورگر خود را رفرش نمایید.
بخش لاگ موجود در سرور خود را برای بدست آوردن اطلاعات بیشتر در رابطه با نحوه مواجه شدن سرور با درخواست های مربوطه بررسی نمایید. به طور مثال وب سرورهایی مانند Apache و Nginx لاگ فایل های مرتبط را در دو فایل به نام های log و error.log ایجاد می نمایند لذا با بررسی کامل این دو فایل اطلاعات جامع و مناسبی کسب خواهد شد.
به خاطر داشته باشید که تعاریف کدهای وضعیت HTTP بخشی از استانداردی هستند که توسط نرم افزارهای مرتبط سمت سرور پیاده سازی شده اند. بنابراین کدهای وضعیتی که به نمایش در می آیند به چگونگی برخورد (مواجهه) نرم افزار مرتبط در سمت سرور با خطای مربوطه بستگی خواهد داشت.
504
این خطا زمانی رخ می دهد که سرور مبدا که اینترنت شماست ، درخواست به سرور مقصد ارسال میکند ولی در بازه زمانی مشخص پاسخی از سرور مقصد دریافت نمی شود.
دلیل این خطا می تواند به موارد زیر مرتبط باشد:
ارتباط شبکه بین دو سرور اختلال دارد.
سرور مقصد بدلیل لود بالا با کملود منابع مواجه است و نمی تواند به درخواستهای جدید پاسخی دهد.
زمان timeout تعریف شده در سرور مقصد کوتاه می باشد.
زمان timeout در سرورها با مقداری بنام execution_time در فایل php.ini قابل تنظیم می باشد.
هر دیتابیسی که در Sql server ایجاد می شود، دارای دو فایل اصلی می باشد. فایل اول، فایل اصلی است که دادهها روی آن نگهداری و ذخیره میشوند (فایلی با پسوند mdf.) دومین فایل مربوط به ثبت وقایع اتفاق افتاده روی پایگاه داده است و هر تراکنشی که در پایگاه داده انجام میشود در این فایل ذخیره میشود (فایلی با پسوند ldf می باشد. حجم فایل ldf با توجه به اینکه بصورت لحظه ای و به ازای هر تغییر در حال افزایش می باشد، ممکن است باعث بالابردن ناگهانی و غیر طبیعی حجم دیتابیس شما شود و زمانی که کل فضای هارددیسک را اشغال کند، عملا دیگر هیچ عملیاتی روی پایگاه داده انجام نمیشود.
از طریق عملیات shrink در Sql می توانیدفضاهای اضافی را حذف کرده و حجم دیتابیس را کاهش دهید.
در sql دیتابیس به دلیل تولید Log File ، حجم زیادی از فضای دیتابیس را اشغال خواهد کرد که با استفاده از امکان های Truncate و Shrink این log File ها حذف شده و فضای قابل توجهی از فضای دیتابیس شما آزاد خواهد شد.
جهت shrink دیتابیس از طریق Sql Server Management مراحل زیر را انجام دهید:
ابتدا به sql متصل شوید.
در لیست دیتابیس ها، برروی نام دیتابیس مورد نظر راست کلیک نموده و در زیر شاخه Tasks گزینه shrink و زیر شاخه Files را انتخاب کنید.
سپس از قسمت File Type گزینه log را انتخاب کنید.
سپس بر روی دکمه OK کلیک کنید بدین صورت حجم لاگ دیتابیس شما کاهش خواهد یافت.
از طریق اجرای query زیر نیز می توانید در sql حجم لاگ دیتابیس را کاهش دهید:
ابتدا بر روی نام دیتابیس کلیک نموده و سپس از منو بالای صفحه گزینه new query را انتخاب نمائید.
دستورات زیر را در آن کپی و اجرا نمائید.
بجای dbname نام دیتابیس مربوطه را جایگزین کنید.
Shrink کردن فایل LOG به یک حجم خاص :
Use dbname
Alter Database dbname Set Recovery Simple
DBCC SHRINKFILE (‘YOUR_LOG_NAME_log’, 1)
Alter Database dbname Set Recovery Full
دستورShrink یک دیتابیس به یک درصد خاص از فضای آزاد:
ممکن است با خطایی در سایت وردپرس خود مواجه شوید مراحل زیر را پیگیری کنید
1- تهیه بکاپ کامل از سایت وردپرسی
شما از راه های مختلف می توانید از سایت وردپرسی خود بکاپ بگیرید
بکاپ از سایت وردپرس
بکاپ گرفتن منظم باعث می شود هرموقع سایت شما با مشکلی مواجه شد یا مورد حمله هکرها قرار گرفتید یا به اشتباه فایلی را حذف کرده باشید رپبه راحتی آن را بازگردانی کنید و سایت خود را به حالت اولیه بازگردانی کنید
2–غیر فعال کردن تمام افزونه های سایت
گاهی خطاها از افزونه ها است یعنی گاهی شما افزونه های را بروزرسانی می کنید اما آن افزونه ممکن است با نسخه وردپرس شما سازگاری نداشته باشد و گاهی هم این روند برعکس پیش می آید
به هر حال وقتی با خطایی مواجه شدید افزونه ها را غیر فعال کنید
برای غیر فعال کردن افزونه ها از منو مدیریت به افزونه های بروید و سپس تیک همه افزونه ها را غیر فعال کنید سپس از منو کشویی گزینه غیر فعال کردن را انتخاب و روی اجرا کلیک کنید
ممکن خطایی بوجود آمده باشد که به پنل مدیریت وردپرس دسترسی نداشته باشید اگر اینگونه شد مراحل زیر پی بگیرید:
وارد هاست خود شوید به file manager بروید و سپس به پوشه wp-content رفته و نام پوشه plugins را به “plugins.deactivate” تغییر دهید
هم اکنون افزونه های غیر فعال شدند
3- فعال کردن پوسته پیشفرض
در بعضی مواقع ممکن است پوسته ای که برای سایتتان انتخاب و فعال کرده اید خطایی ایجاد کرده باشد
شما از پنل مدیریت به پوسته ها بروید و سپس یکی از پوسته های پیشفرض وردپرس را فعال کنید
اگر هم به پنل مدیریت وردپرس دسترسی ندارید:
وارد هاست و file manager شوید به مسیر wp-content>themes بروید و پوسته ای که فعال است را بر روی کامپیوتر خود دانلود کنید سپس آن را از هاست حذف کنید وردپرس به طور خودکار یکی از پوسته پیشفرض را فعال می کند
4- بروزرسانی پیوندهای یکتا
برای انجام این روش از منو تنظیمات> پوندهای یکتا را انتخاب کنید
از قسمت پایین بدون اعمال هیچگون تغییری روی ذخیره تغییرات کلیک کنید
5- تهیه بکاپ و حذف فایل .htaccess
برای حذف فایل گفته شده شما باید وارد هاست شوید و به file manager بروید
ابتدا آن را روی رایانه خود دانلود کنید سپس آن را از هاست حذف کنید
6- بررسی URL وردپرس
برای حل این مشکل به پنل مدیریت وردپرس رفته از منو سمت راست به تنظیمات>همگانی بروید
بررسی کنید که هر دو “نشانی وردپرس (URL)” و “نشانی سایت (URL)” مقدارشان شبیه هم باشد
url
اگر در اینجا هم به پنل مدیری دسترسی ندارید نگران نباشید
آموزش بررسی url سایت از wp-config.php
طبق مراحل قبل به هاست خود و file manager در اینجا فایل wp-config.php را در ویرایشگر موجود در هاست باز کنید اگر در دایرکت ادمین هستید روی گزینه مقابل فایل Edit کلیک کنید اگر هم در سی پنل هستید روی فایل راست کلیک کرده و سپس Edit را بزنید
یا از طریق روش ساده تر که FTP هست به هاست بروید و فایل را در نوت پد باز کنید
هنگامی که فایل باز شد به خطی که چنین چیزی گفته بروید:
/* That’s all, stop editing! Happy blogging. */
فراموش نکنید به حای mihanhosting.ir آدرس سایت خود را وارد کنید
برورسانی URL ها از طریق فایل functions.php
در هاست و file manager به مسیر /wp-content/themes/folder بروید منظور از folder نام پوشه پوسته فعالی سایت شماست
فایل functions.php را بیابید و آن را برای ویرایش باز کنید و این دو خط کد را در پایین ترین قسمت و قبل از ؟> اضافه کنید