【问题标题】:Laravel redirects to 404 error page if URL has www prefix如果 URL 有 www 前缀,Laravel 会重定向到 404 错误页面
【发布时间】:2020-02-12 16:58:45
【问题描述】:

我在 Laravel 6.12 中有项目。我已将我的应用托管在实时服务器中并配置了 SSL。

当我使用https://example.com 访问时效果很好,但是当我尝试使用https://www.example.com 访问时它显示 laravel 的默认 404 错误页面。

意思是,它正在访问项目目录,加载css,js等但显示404错误页面。

我的 .htaccess 有以下几行

RewriteCond %{HTTPS} =on
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R,QSA,L]

谁能帮忙解决这个问题?

【问题讨论】:

  • 检查VirtualHost 配置中的www.example.com。确保它与example.com 相同。
  • 你到底想要什么?将其重定向到非 www 或按原样提供
  • @akbansa 是的,我想要 www 到非 www 路径。

标签: laravel .htaccess


【解决方案1】:

用这个替换你的 .htaccess 如果尝试https://example.com,它将强制重定向到https://www.example.com 这对 SEO 来说是正确的

RewriteCond %{HTTPS} =on
# check if not have www 
RewriteCond %{HTTP_HOST} !^www\. [NC]
# force redirect to www
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-16
    • 1970-01-01
    • 2023-03-27
    • 2018-06-13
    相关资源
    最近更新 更多