سلام دوستان
من یه پروژه رو با اخرین ورژن لاراول نوشتم توی اجرای لوکال هیچ مشکلی نداشت و اجرا میشد.
اما الان روی هاست اپلود کردم و اجرا نمیشه . از ابتدا به مشکلاتی خوردم و دونه دونه حلشون کردم.
(مینویسم تا در موارد مشابه حل کنند دوستان و پاسخ هاتون این موارد نباشد)
یک . ابتدا به حروف بزرگ و کوچیک گیر داد که حلش کردم.
دو . به نوع utf۸ گیر داد که پیشفرض رو گذاشتم حل شد و دیتابیسی که ساختم رو utf۸_genera_ci گذاشتم حل شد.
سه . اروری نشون میداد که حدس میزدم به خاطر درست کار نکردن تابع public_path() هستش برای همون پروژه رو به صورتی که آقای حسام موسوی توی همین سایت توضیح داده بود اپلود کردم(تمامی فایل ها روی روت اصلی .و اطلاعات فایل public در فایل public_html)
با این حال الان لاراول اجرا میشه(منظور صفحه خطای لاراول بالا اومده) روی هاست،اما ارور ۵۰۰ رو نمایش میده.
لطفا راهنمایی کنید .چطور مشکلم رو حل کنم باتشکر
در ضمن دوستان من پوشه storage ->log >laravel.log رو چک کردم و دیدم پروژه به این قسمت که میرسه ارور میده:
/home/nanokal1/public_html/index.php(60): IlluminateFoundationHttpKernel->terminate(Object(IlluminateHttpRequest), Object(IlluminateHttpResponse))
# 16 {main}
مشکل کجاست به نظرتون .؟؟فایلindex.php چه مشکلی داره ؟
سلام مشکل قبلیم حل شد .البته شرمنده خودم سواال پرسیدم .خودمم جواب میدم
مشکلم در فایل .env و در پر کردن فیلد APP_URL=http://localhost
بود.اما یه مشکل جدید دارم و اینکه هر روتی غیر از روت اصلی کار نمیکند !!؟؟
یعنی فقط و فقط روت اصلی کار میکنه .مشکل کجاست ؟؟لطفا راهنمایی کنید ؟اروری که نشون میده :
توی اینترنت هم جستجو کردم،گویا مشابه من این مشکل رو داشتن .اما از توضیحاتشون هیچ چیز نفهمیدم:
Not Found
The requested URL /product was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
SEARCH IN WEB : laravel all routes except home result in 404 error
سلام چون دارین از ngnix استفاده میکنید باید یک سری تغییرات در ngnix بوجود بیارید تا روت های دیگه به index.php ارسال بشه از نمونه زیر میتونید استفاده کنید .
server {
listen 80 default_server;
root /var/www/laravel/public/;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
# pass the PHP scripts to FastCGI server listening on /var/run/php5-fpm.sock
location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
اگر هاست اشتراکی هست به مدیریت اطلاع بدید تا براتون درست کنن
سلام.آقای موسوی @hesammousavi
من از پشتیبانی هاستم درخواست کردم کاری که شم گفتید رو انجام بده اما در جوابم گفتن :
از آنجایی این هاست ، یک هاست اشتراکی می باشد لذا امکان تغییرات بر روی آن وجود ندارد .
در صورتی که از پایتون استفاده می کنید و نیاز به پورت جهت listen کردن دارید ، از پورت "4983" استفاده فرمایید . (لازم به ذکر است پورت SSH 44098 می باشد)
به نظرتون باید هاستم رو عوض کنم ؟
پس اگر حتما میخواید هاست اشتراکی بگیرید هاستی تهیه کنید که این مورد در ngnix رو انجام داده باشه یا انجام بده یا اصلا از ngnix استفاده نکرده باشه و apache باشه .
یا میتونید از سرور مجای استفاده کنید که کلا دستتون باز باشه
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟