مقدمه رفع خطای استارت نشدن زمپ با ۵ روش
همانطور که میدانید از نرم افزار Xampp برای راه اندازی یک وب سرور و در نهایت شبیه سازی سرور استفاده میشود. اگر فکر میکنید نرم افزار زمپ را به طور صحیح نصب کردهاید اما به هر طریقی گزینههای Apache و یا MySQL اجرا نمیشوند، پس باید به کمک یکی از روشهایی که در ادامه توضیح خواهیم داد این مشکل را حل نمایید. ممکن است برای رفع خطای استارت نشدن Apache و MySQL در زمپ نیاز داشته باشید تا یک نرم افزار خاص را حذف یا غیرفعال کنید، و یا چند دستکاری در پوشههای نصبی زمپ انجام دهید.
مهمترین نکتهای که باید به آن دقت لازم داشته باشید این است که بایستی نرم افزار زمپ را در درایو مشخص مانند C و زیر شاخه خود درایو نصب نمایید. ممکن است پس از رفع خطای استارت نشدن زمپ لازم باشد آدرس ورود به لوکال هاست را نیز تغییر دهید. با توجه به مطالب زیر بررسی نمایید مشکل سیستم شما از کجاست و اقدام به رفع آن نمایید.
سبز نشدن Apache به دلیل اشغال پورت ۸۰ یا ۴۴۳
بیشترین خطایی که کاربران درمورد نرم افزار Xampp مشاهده میکنند، عدم سبز شدن گزینه آپاچی است. این مشکل به دلیل این است که پورت ۸۰ یا ۴۴۳ توسط یک برنامه دیگر اشغال شده است. توجه کنید که وب سرور آپاچی به طور پیش فرض از پورت ۸۰ و ۴۴۳ استفاده میکند، به همین دلیل است که پس از نصب زمپ احتمال سبز نشدن آپاچی وجود دارد. برای حل این مشکل یا باید نرم افزار مربوطه را پیدا کرده و آن را حذف نمایید، یا اینکه پورتهای پیش فرض زمپ را تغییر دهید.
حل سبز نشدن آپاچی با تغییر پورت ۸۰ و ۴۴۳
یکی از سادهترین روشهای رفع خطای استارت نشدن Apache تغییر پورتهای برنامه است. از آنجایی که هر سیستم میتواند چندین نرم افزار در سیستم داشته باشد، پس احتمال اشغال این پورتها نیز بالاست. برای تغییر پورتهای پیش فرض آپاچی میتوانید از دو راه استفاده نمایید.
۱- تغییر پورت ۸۰
- به مسیر C:\xampp\apache\conf بروید و فایل httpd.conf را با برنامه Notepad باز کنید.
- طبق تصویر زیر فایل httpd.conf را باز کنید.
با زدن کلیدهای ctrl+f به دنبال ۸۰ بگردید. این عدد را در ۳ جا پیدا خواهید کرد. آن را به ۸۰۸۰ یا هر عدد دیگری تغییر دهید و فایل را ذخیره نمایید.
۲- تغییر پورت ۴۴۳
همانطور که پورت ۸۰ را برای آپاچی تغییر دادید، این کار را برای پورت ۴۴۳ جهت رفع مشکل https انجام دهید. برای این کار ابتدا باید از راههای زیر استفاده نمایید:
- به مسیر C:\xampp\apache\conf\extra بروید و فایل httpd-ssl.conf را با برنامه Notepad باز کنید.
- طبق تصویر بالا فایل httpd-ssl.conf را باز کنید.
با زدن کلیدهای ctrl+f به دنبال ۴۴۳ بگردید. این عدد را در ۳ جا پیدا خواهید کرد. آن را به ۴۴۳۳ یا هر عدد دیگری تغییر دهید و فایل را ذخیره نمایید. پس از ذخیره هر دو فایل کامپیوتر خود را Restart نمایید و مجدداً زمپ را اجرا نمایید. خواهید دید که آپاچی بدون مشکل اجرا خواهد شد.
۳- دسترسی به localhost پس از تغییر پورت
پس از رفع خطای استارت نشدن زمپ با تغییر دادن پورتها، جهت دسترسی به لوکال هاست نیاز دارید آدرس localhost را در نوار آدرس مرورگر تغییر دهید. برای مثال چنانچه به جای ۸۰ عدد ۸۰۸۰ داده باشید، آدرس جدید localhost:8080 خواهد بود.
حل سبز نشدن آپاچی با غیرفعال کردن SQL Server
همانطور که در ابتدا گفتیم، ممکن است یکی از نرم افزارهای موجود در سیستم پورت ۸۰ را اشغال کرده باشد، و به همین دلیل نتوانید آپاچی را فعال نمایید. بنابراین بایستی به دنبال نرم افزار مربوطه بگردید و آن را غیرعال یا حذف نمایید تا پورت ۸۰ آزاد گردد. یکی از نرم افزارهایی که مستقیماً از پورت ۸۰ استفاده میکند SQL Sqerver میباشد.
اگر پیش از نصب نرم افزار زمپ، نرم افزار SQL Server را در سیستم خود نصب داشته باشید، به احتمال زیاد پورت ۸۰ اشغال شده است (برخی از نسخههای SQL Server مانند ۲۰۱۹ این مشکل را ندارند)؛ اگر قصد ندارید به صورت دستی (روش بالا) پورت ۸۰ زمپ را تغییر دهید، بایستی سرویس SQL Server را غیرفعال یا Stop نمایید. بدین جهت برنامه SQL Server Configuration Manager را طبق تصویر زیر باز نمایید.
همانطور که میبینید سرویسهای SQL Server در حال اجرا هستند. سرویس را پیدا کرده و آن را غیرفعال نمایید.
ممکن است سرویس بالا برای شما نمایش داده نشود، که به دلیل تفاوت ورژنهای نرم افزار است (این گزینه در نسخه ۲۰۱۹ موجود نیست و زمپ بدون مشکل اجرا میشود). چنانچه گزینه بالا را پیدا نکردید و همچنان مشکل اتصال در زمپ داشتید، تمامی سرویسهای MSSQLSERVER را غیرفعال نمایید.
پس از اجرای این مرحله از رفع خطای استارت نشدن زمپ، متوجه خواهید شد که سرویس Apache بدون مشکل اجرا میشود.
چنانچه مجدداً نیاز به استفاده از SQL Server داشته باشید، تنها کافیست سرویسهایی که Stop یا غیرفعال کردهاید اجرا یا Start کنید.
سبز نشدن MySQL به دلیل خطای پایگاه داده
مای اس کیو ال پایگاه دادهای است که در چندین پلتفرم مختلف از جمله ویندوز قابل اجراست و کاملاً با زبان برنامه نویسی php و زمپ سازگار است. برای اینکه بتوانید به پایگاه داده پروژههای PHP خود دسترسی داشته باشید، بایستی گزینه MySQL را نیز فعال یا سبز نمایید. فعال نشدن این گزینه میتواند به دو علت باشد.
- اشغال پورت ۳۳۰۶ توسط نرم افزار دیگر
- خطای Aria recovery failed پایگاه داده
در ادامه با ۲ روش رفع خطای استارت نشدن زمپ و MySQL را توضیح خواهیم داد.
حل سبز نشدن MySQL با تغییر پورت ۳۳۰۶ در php.ini و my.ini
برای تغییر پورتهای پیش فرض MySQL در مرحله اول میتوانید از دو راه استفاده نمایید.
- به مسیر C:\xampp\php بروید و فایل php.ini را با برنامه Notepad باز کنید.
- طبق تصویر زیر فایل php.ini را باز کنید.
با زدن کلیدهای ctrl+f به دنبال ۳۳۰۶ بگردید. این عدد را در ۲ جا پیدا خواهید کرد. آن را به ۳۳۰۷ یا هر عدد دیگری تغییر دهید و فایل را ذخیره نمایید. پس از آن، همین کار را در فایل دیگری نیز بایستی انجام دهید. به مراحل زیر توجه کنید:
- به مسیر C:\xampp\MySQL\bin بروید و فایل my.ini را با برنامه Notepad باز کنید.
- طبق تصویر زیر فایل my.ini را باز کنید.
در این فایل نیز بایستی عدد ۳۳۰۶ را پیدا کرده، و نام را به همان اعدادی که در فایل بالا دادید، تغییر دهید. تئجه کنید که این بار در ۵ جا بایستی پورت را تغییر دهید. پس از اتمام کار فایل را ذخیره نمایید و کامپیوتر خود را Restart نمایید و مجدداً زمپ را اجرا نمایید. خواهید دید که MySQL بدون مشکل اجرا خواهد شد.
حل سبز نشدن MySQL با تغییر پوشه data
معمولاً اگر رفع خطای استارت نشدن زمپ با تغییر پورت حل نشود، پوشههای دیتابیس یا data با مشکل مواجه شدهاند. برای حل این مشکل باید پوشههای مربوطه را تغییر دهید. نگران نباشید! تمامی پایگاه دادههایی که در سیستم ایجاد نمودهاید بدون تغییر باقی خواهند ماند. اگر مطمئن نیستید که خطای دریافتی شما به چه دلیلی است، میتوانید دکمه Logs را در جلوی MySQL کلیک کنید؛ در این فایل تمامی خطاهایی که دریافت کردهاید همراه با تاریخ و ساعت نوشته شده است. چنانچه خطای زیر را در داخل فایل پیدا کردید، پس بایستی از روش تغییر پوشه data جهت رفع مشکل استفاده نمایید.
[Note] InnoDB: File 'C:\xampp\mys
۱- برای حل مشکل ابتدا به مسیر C:\xampp\mysql بروید.
۲- در اینجا باید نام پوشه data را به data_old تغییر دهید. در ادامه پوشه جدیدی به نام data بسازید.
۳- تمام محتوای پوشه backup را در پوشه data (که به تازگی آن را ساختهاید) کپی کنید.
۴- (فقط!) پوشههای درون data_old را در پوشه جدید (با نام data) کپی کنید. (توجه کنید که نباید پوشههای mysql, performance_schema و phpmyadmin را کپی کنید!)
۵- فایل ibdata1 را از پوشه قبلی (data_old) به پوشه جدید (data) کپی کنید.
۶- سیستم خود را ریستارت نموده و نرم افزار زمپ را اجرا کنید. سپس روی دکمه Start مربوط به MySQL کلیک کنید. خواهید دید که زمپ بدون مشکل اجرا میشود.
نکته: پیش از حذف پوشه data_old حتماً چک کنید که پایگاه دادهها به درستی منتقل شده باشند.
رفع خطای استارت نشدن زمپ با حذف نصب برنامه و نصب مجدد
افرادی که دارای پایگاه داده کمتری در سیستم خود هستند و یا نگرانی بابت از دست دادن آنها ندارند، میتوانند بدون اینکه روش بالا را اجرا کنند، تنها با حذف نصب نرم افزار زمپ و نصب مجدد آن مشکل مشکل اجرا نشدن Apache و mysql را حل نمایند. چنانچه امکان حف نصب برنامه را دارید، با نصب مجدد این مشکل را حل نمایید.
همانطور که در ابتدای مطلب ذکر شد، سعی کنید زمپ را در ریشه درایو C نصب نمایید تا نرم افزار بدون مشکل اجرا گردد.
سخن آخر درمورد رفع خطای استارت نشدن زمپ
در این مطلب به روشهای حل مشکل اجرا نشدن Apache و mysql پرداختیم که بیشترین خطاهای دریافتی از سمت کاربران و برنامه نویسان وب بوده است. اگر فکر میکنید راه حل دیگری برای حل این مشکلها میدانید، خوشحال میشویم در بخش کامنتها با ما درمیان بگذارید. چنانچه در رفع خطای استارت نشدن زمپ همچنان با مشکل مواجه میشوید و نتوانستید با روشهای بالا آن را حل کنید، با ما به اشتراک بگارید تا جایی که بتوانیم آن را حل نماییم. موفق باشید.
5 پاسخ
سلام. تشکر بابت مقاله
یه تجربه شخصی هم داشتم اگه صلاح دونستی به مقالت اضافه کن.
برا آپاچی اگه آدرس document_root که توی httpd.conf کانفیگ می شه موجود نباشه بازم آپاچی ارور می ده و ران نمی شه.
با سپاس
سلام من تمام کارهای بالا رو انجام دادم ولی بازم نشد
من sql server ندارم و دستی تغییر میدم میگه شما اجازه این کارو ندارید چیکار کنم
عالی
واقعا سپاسگزارم
روش تغییر پوشه data برای من عالی جواب داد.
ممنو بدردم خورد حتما پوشته دیتا قدیمی رو حذف باید کنیم؟
پس از انتقال محتوای پوشه دیتای قدیمی، دیگر نیازی به پوشه data_old نیست و میتونید حذف کنید یا بذارید بمونه.