راکت

راهندازی لاراول در دایرکت ادمین

17 پاسخ

سلام دوستان من میخوام لاراول رو به هاست انتقال بدم و از طریق پنل دابرکت ادمین.
حالا فایل های public رو public_html انتقال دادم اما وقتی آدرس رو اصلاح میکنم ، اجرا نمیشه و در واقع اصلا از پوشه public_html به عقب برنمی گردد.
در واقع آدرس به شکل زیر در میاد

/shia-club.ir/public_html/../laravel/vendor/autoload.php

فرض کنید لاراول در پوشه laravel قرار دارد.
فکر میکنم بخاطر تنظیمات htacces باشه .
لطفا راهنمایی کنید.

ثبت پرسش جدید

پاسخ‌ها

17
سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

دوستان ممنون میشم اگر تجربه ای دارند ، راهنمایی کنن

حمیدرضا
حمیدرضا
@hamidrezaabasi212

تخصص: برنامه نویس

سلام شما اول باید فایل index.php در داخل پوشه public_html رو باز کنین و دو تا آدرس زیر به این صورت ویرایش کنید :
اگه محتویات قبل از public_html رو درون پوشه (laravel) ریخته باشین کد زیر جایگزین کنید :

require __DIR__.'/../laravel/vendor/autoload.php';
$app = require_once __DIR__.'/../laravel/bootstrap/app.php';

و همچنین برای معرفی پوشه public_html به جای public باید کد زیر درون فایل AppServiceProvider داخل متد register جای گذاری کنید :

 $this->app->bind('path.public', function() {
        return base_path().'/public_html';
    });

شاید پاسخ شما همین‌جا باشد

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hamidrezaabasi212

دقیقا این مراحل رو رفتم الان لاراول رو میشناسه .
منتها وقتی روت اصلی رو باز میکنیم / ، به صورت خودکار ریدایرکت میشه به /public و صحفه 404 رو نشون میشه

http://siteName/public

404 | Not Found
سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hesammousavi
آقای موسوی شما نظری ندارید ؟

حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

محتوای فایل public رو باید بریزید داخل public_html .
یعنی در هاست public که در لوکال داشتید میشه public_html
و مابقی فایل ها رو بدونه تغییر قبل از public_html قرار میدید فقط همین

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hesammousavi
درسته آقای موسوی فرامایش شما صحیح
و من هم همین کار رو کردم و روش های دیگه رو هم امتحان کردم.
اما وقتی سایت رو باز میکنم مثلا stie.ir
خودش خودکار به site.ir/public منتقل میشه و صحفه 404 رو نشون میده

حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

الان شما محتوای public خودتون رو همه رو با .htaccess داخل public_html ریختید ؟
و مابقی فایل‌ها مثل app رو قبل public_html
اسکریپن شات از public_html لطف کنید

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hesammousavi

بله دقیقا ریختم
این تصویر publichtml:

توضیح تصویر رو وارد کنید

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hesammousavi

این هم تصویر قبل از public_html

توضیح تصویر رو وارد کنید

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hesammousavi
برای خودم که خیلی عجیبه ، الان دقیقا محتوای public داخل public_html هست و فایل های لاراول هم قبل از public_html هستن و در AppServiceProvider هم اینو ست کردم

$this->app->bind('path.public', function() {
        return base_path().'/public_html';
    });
سیدعلی موسوی
سیدعلی موسوی
@juza66

تخصص: سی شارپ و پی اچ پی

فایل htaccess رو عکس بذارین

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hesammousavi @juza66

این هم از فایل public_html/.htsccess

توضیح تصویر رو وارد کنید

سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@hossein.r.1442
اقای رضوی شما نظری ندارید؟

سید حسین رضوی
سید حسین رضوی
@hossein.r.1442

تخصص: برنامه نویس وب و طراح رابط کاربری

این سایت رو ببینید یه مطلب من حدود دوسال پیش دیده بودم که همین مورد رو آموزش میداد البته این طوری گفته بود که تمام فایلها رو بریزید توی public_html نه اینکه فقط public تنها رو ولی خوب راح حلش منطقی بود و درستم کار میکرد
برو به این آدرس

Mohammad Amin Mokhtari
Mohammad Amin Mokhtari
@amin.mokhtari94

تخصص: برنامه نویس

سلام
دو تا چیز میمونه برا چک کردن:

  • متغییر APP_URL در env درست ست شده باشه.
  • نسخه php هم بدرستی اجرا شده باشه.
وحید الوندی
وحید الوندی
@vahidalvandi

تخصص: برنامه نویس

میلاد خسروی
میلاد خسروی
@milwad

تخصص: برنامه نویس بامزه

سلام خسته نباشید
کد مربوط به htaccess رو بفرست

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام