Backend developer ✌
ترفندهای لاراولی - آپلود لاراول در هاست اشتراکی
خب بعد از تلاش های فراوان و نوشتن و طراحی سایت کارفرما میگه سایت رو آنلاین کن توهم میگی اوکی اطلاعات هاست رو بده بیاد و اطلاعات رو میده میاد و میبینی هاست اشتراکی هست و تازه شانس بیاری
cPanel 😄 این شروع یک سری دردسر هست که وقتی زمان نگه داری و رفع باگ میشه بیشتر هم میشن.
من توی این سری چندتا از تجربیات خودم رو میگم، اگه شماهم تجربه ای داشتید برام بنویسید.
1- مرحله اول - زیپش کن
توی این مرحله کل فولدری که پروژه لاراولی ات توشه رو فشرده میکنی با فرمت زیپ (zip.)
چطور؟ اینطور که مشاهده میکنید:
اگر پروژه تون دیتابیس هم داشت که باید ازش اکسپورت بگیرید که اگه بلد نیستید اینو سرچ کنید:
how export mysql database
2- مرحله دوم - زیپو آپلودش کن
حالا برو تو cPanel و توی قسمت مدیریت فایل ها File Manager و توی پوشه public_html
اون بالا دکمه آپلود رو بزن و فایل زیپ ات رو انتخاب کن و صبرکن تا آپلود تمام بشه. تموم که شد میبینی یک فولدر به همون نام زیپ ات ساخته شده که توی اون اطلاعات پروژه ات هست. همه فایل ها رو سلکت کن و از پوشه بیارشون بیرون تا توی مسیر روت Root یا همون public_html پروژه ات باشن. حالا میتونی فایل زیپ رو دیگه پاک کنی که حجم اضافه از هاست نگیره.
برای دیتابیس هم باید اول یک دیتابیس بسازی در cPanel. چطور؟ اینطور که از این قسمت رو
MySQL® Databases کلیک میکنی. و بعد یک اسم انتخاب میکنی و دکمه Create Database رو میزنی.
حالا باید برای دیتابیس ات یک کاربر تعریف کنی و به کاربرت دسترسی کامل بدی. اطلاعاتی هم که برای دیتابیس و کاربرت میزاری مثل نام کاربری و پسورد رو ذخیره کن که نیازت میشه. سعی هم کن پسورد قوی بزاری یا از Password Generator خود cPanel استفاده کنی.
و در نهایت در قسمت Add User To Database کاربری که ساختید رو به دیتابیستون اضافه کنید و دسترسی های مورد نیاز رو بهش بدید (همه رو بهش بدید بره خوشحال باشه).
یادمه اولین باری که میخواستم پروژه لاراولی ام رو توی هاست اشتراکی آپلود کنم چالش های مختلفی داشتم که هرکدومشون الان یک درس و تجربست. برای هم
3- مرحله سوم - تنظیماتشو آماده کن
دوتا فایل هست که باید تغییراتی توشون اعمال بشه تا پروژه بیاد بالا توی آدرس سایت ات.
فایل اول public/index.php
این فایل index.php که در پوشه public پروژه هست اولین فایلی هست که لاراول نیاز داره برای شروع هسته اصلی اش پس مراقب باش دقیقا کاری که میگم رو بکنی. اول همه فایل ها توی پوشه public رو بیار توی روت پروژه ات یعنی یک فولدر بالاتر و بعد توی فایل index.php این دو خط رو تغییر بده.
از این :
require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
به :
require __DIR__.'/bootstrap/autoload.php';
$app = require_once __DIR__.'/bootstrap/app.php';
راه حل جایگزین (خودم اینو انجام میدم) :
بجای اینکه فایل های پوشه public رو جابجا کنم و فایل index.php رو دستکاری کنم، میام و فایل htaccess. رو ویرایش میکنم که راه سریع تر و تمیز تری هم هست. مسیرش؟ توی همون پوشه public
نمیبینیش؟ باید دیدن فایل های مخفی در cPanel رو فعال کنی چطور؟ اینطور:
اولا یه کپی از این فایل میگیرم و توی روت پیست میکنم پس الان 2 تا فایل htaccess. داریم یکی توی پوشه public یکی هم توی روت. حالا اینی که توی روت هست رو ویرایش میکنیم. راست کلیک کنید و گزینه edit رو بزنید میتونید یک فایل رو توی cPanel ویرایش کنید. حالا در بالای کدها این چندخط رو کپی کنید، سیو کنید و تمامممم.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
فایل دوم env.
این فایل هم که اطلاعات برنامه مثل دیتابیس و Email سرویس و ... توش ذخیره میشن پس باید آپدیت اش کنیم با اطلاعات دیتابیس جدیدمون، نام دیتابیس و نام کاربری و پسورد.
حالا دیگه سایت آماده است و باید توی آدرس دامین ات نمایش داده بشه. امیدوارم این مطلب برات مفید بوده باشه.
توی مقاله بعدی درباره تجربه هام در زمان نگه داری و پشتیبانی سایت لاراولی روی هاست اشتراکی مینویسم حتما اونم بخون. 🔨🪓
مطلبی دیگر از این انتشارات
فیلامنت، اضافه کردن صفحه ویرایش پروفایل
مطلبی دیگر از این انتشارات
به اشتراک گذاری سریع تر تجربیات شما. مدیریت دانش
مطلبی دیگر از این انتشارات
جستجو روی بیش از یک فیلد در فیلامنت