آموزش نصب لاراول در cpanel
لاراول بهترین پلتفرمها برای طراحی سایت اختصاصی است. اما هنگام طراحی سایت با لاراول یکی از مشکلات اساسی نصب لاراول در انواع پنلهای مدیریتی مانند CPANEL است. دلیل آن هم این است که لاراول یک پوشه به نام public دارد که سایت از آنجا راه اندازی میشود و در واقع root به حساب می آید اما در cpanel سایت از درون پوشه public_html راه اندازی میشود. برای حل این مشکل نیاز به تغییر ساختار و پوشه های سایت نیست و با افزوندن تکه کد کوتاهی در فایل index.php درون public میتوان مشکل را حل کرد ، به طور پیش فرض تمعماری لاراول به صورتی طراحی شده که پوشه public حاوی فایل های غیرسیتمی است و دسترسی هکرها را به هسته اصلی نرم افزار مسدود میکند .
ما در دو روش آموزش نصب لاراول در سی پنل را آموزش میدهیم
روش اول که تاکید میشود از همین روش استفاده کنید چون که نیازی به تغییر در کدهای لاراول نیست . در این روش به جای اینکه root وب سایت شما دایرکتوری public_html باشد به یک دایرکتوری داخلی public تغییر میکند یعنی میشود public_html/public است . در اینجا شما باید پروژه خود را در دایرکتوری public_html آپلود کنید و همان دایرکتوری public لاراول جایگزین public میشود که شما ایجاد کرده اید . اما برای اینکه root را تغییر دهید در بخش تنظیمات Domains کلیک کنید و سپس Addon Domain مطابق تصویر زیر انتخاب کنید و با ویرایش root به مسیر public_html/public کار تغییر root انجام میشود . برای اینکه تنظیمات اعمال شود حداقل 2 دقیقه صبر کنید.
اما روش دوم زمانی است که شما دسترسی به تغییر root را ندارید و با این روش هم میتوانید لاراول را در هاست اشتراکی سی پنل هم راه اندازی کید
1 - در ابتدا وارد cpanel شده و در پوشه public_html همه فایل های موجود موقت را حذف کنید . سپس به یک دایرکتوری عقب برگردید و folder هایی که غیرضروری هستند را نیز حذف نمایید.
2 - حالا سراغ پروژه لاراول میرویم ودر این مرحله باید وارد پوشه public شوید و فایل index.php را ویرایش کنید سپس پوشه public را به html_public تغییر نام دهید و کافی است که چند خط برنامه زیر را وارد بعد خط زیر اضافه کنید.
با اضافه کردن کد زیر به لاارول اعلام میکنید بعد از متغییر app$
$app->bind('path.public', function() {
return __DIR__;
});
3 - به cpanel بر میگردیم و پروژه لاراول را در ریشه آپلود میکنید(نه درون public_html اصلی cpanel) بلکه یک دایرکتوری عقب تر به صورتی که public_html لاراول با public_html سی پنل یکسان و برابر شود.
این روش در همه پنل های مدیریتی از قبیل plesk و directadmin نیز قابل استفاده می باشد