محمد رضا
3 سال پیش توسط محمد رضا مطرح شد
1 پاسخ

ریدایرکت از http به https با htaccess یا لاراول

سلام خسته نباشید
من هاستی ک خریداری کردم دارای ssl فعال هست
و گاهی وقتی با http درخواست ورود میدم خطای 419 میده ک تحقیق ک کردم مربوط به همین ssl هست وقتی https میکنمش درست میشه
بگذریم
من از هاست اشتراکی استفاده میکنم و نیاز به ریدایرکت شدن به صفحه public دارم و به صورت زیر درست انجام میشه و مشکلی ندارم

RewriteEngine on
RewriteCond %{HTTP_HOST} ^test-salar.ir$ [NC,OR]
RewriteCond %{HTTP_HOST} ^test-salar.ir$
RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) /public/$1 [L]

url من وقتی سایت رو باز میکنم به شکل زیر هست و مشکلی نداره و اوکیه

http://test-salar.ir/login

اما برای ریدایرکت کردن به https از کد زیر ک استفاده میکنم توی ادرس بار publlic رو اضاف میکنه و پروژه ب مشکل میخوره توی ادرس دهی ها

RewriteEngine on
RewriteCond %{HTTP_HOST} ^test-salar.ir$ [NC,OR]
RewriteCond %{HTTP_HOST} ^test-salar.ir$
RewriteCond %{REQUEST_URI} !public/
RewriteRule (.*) https://test-salar.ir/public/$1 [L]

ادرس بار به شکل زیر میشه

https://test-salar.ir/public/login

چطور به پوشه ی public ریدایرکت کنم بدونی که توی ادرس بار بیاد مثل حالت اول و https هم بشه دامنه

توی لاراول در AppServiceProvider کد زیر رو هم تست کردم براش توی بوت ولی سایت با http باز میشه و خطای 500 میده اگر لاگین بزنم


ثبت پرسش جدید
محمد رضا
تخصص : Full Stack Developer
@salar.mohammad2013 3 سال پیش مطرح شد
1

با تشکر از همکاری دوستان 😅
طبق این لینک توی لاراول به راحتی میشه این کار رو با ایجاد یک middleware و تعریف اون توی kernel انجام داد
فقط توی کرنل نوع قرار گیری کلاس برای من متفاوت و به شکل زیر بود

\App\Http\Middleware\HttpsProtocol::class,

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

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