簡體   English   中英

Laravel 公共內容無法在共享主機上訪問

[英]Laravel public content not a accessible on Shared Host

我正在使用帶有 php 7.4 和 Laravel 的共享主機。 我在根 www/ 文件夾中創建了項目然后我需要添加一個 htaccess 文件來加載 index.php

source file: www/.htaccess

<IfModule mod_rewrite.c>
  RewriteEngine On

  RewriteRule ^ /public/index.php [L]
</IfModule>

它允許我加載網站,但從那時起我無法加載公共內容。 運行本地服務器我可以加載樣式表等公共資源

<link rel="stylesheet" href="{{ URL::asset('css/main.css')}}">

但是在生產環境中,它在生成的源上返回 404

<link rel="stylesheet" href="http://neovita.web277.uni5.net/css/main.css">

顯然,CSS 文件的正確 URL 是http://neovita.web277.uni5.net/public/css/main.css

如果有問題的共享主機允許您將文件和文件夾與 www 文件夾放在同一級別,您可以將 www 文件夾設為 Laravel 項目的“公共”文件夾(通過將 public 重命名為 www)。 此處的詳細信息: 如何在 Laravel 5 中將公共文件夾更改為 public_html

.htaccess添加這個

RewriteEngine On
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM