laravel - Laravel 5.5 和 .htaccess - 图像和 css 文件未加载
问题描述
我有一个全新的虚拟服务器Apache2
。我正在尝试开始我的Laravel 5.5
项目。
它在我的 Homestead 环境中运行良好,但在此服务器上它不起作用。
我正在使用这个 apache 配置:
<VirtualHost *:80>
ServerName www.myproject.com
ServerAlias myproject.com new.myproject.com
ServerAdmin webmaster@myadmin.com
DocumentRoot /var/www/www.myproject.com/current/public
CustomLog /var/www/www.myproject.com/log/access.log vhost_combined
ErrorLog /var/www/www.myproject.com/log/error.log
RewriteEngine On
LogLevel alert rewrite:trace3
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ /var/www/www.myproject.com/current/public/index.php [L]
<Directory />
AllowOverride None
Order Deny,Allow
Deny from all
</Directory>
<Directory /var/www/www.myproject.com/current/public>
Options FollowSymLinks MultiViews
Require all granted
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
现在主页加载良好,但如果我点击登录或注册菜单,它显示的是 Laravel 处理和基于 Blade 模板的页面,但 CSS、JS 和图像没有加载。文件位于 public/ 文件夹中的位置,它们不是空大小的,并且仍然没有加载。
如果我点击登录页面,而不是这些文件(css、js、图像),登录页面会显示......
有人知道吗?
解决方案
将 .htaccess 替换为以下内容,并在公用文件夹之外创建 .htaccess 文件。
RewriteEngine On
#----------------------------------------------
# | this code use for remove public directory |
#----------------------------------------------
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
RewriteCond %{REQUEST_URI} !(\.ico|\.css|\.js|\.png|\.jpg|\.gif|robots\.txt|\.eot|\.svg|\.ttf|\.woff|\.woff2|\.otf|\.pdf)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule ^(login|uploads|assets|css|js|images|ca|favicons|fonts|)/(.*)$ public/$1/$2 [L,NC]
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule .* - [e=HTTP_AUTHORIZATION:%1]
推荐阅读
- c++ - 浮点数组的 std::max_element
- angular - 使用 Amplify Codegen 自定义 GraphQL 查询
- c++ - 二维阵列反转线中的 SegFault
- c# - 在用户必须键入所有电影标题之前,如何让我的代码识别数组编号太大?
- azure-logic-apps - LogicApp 是否可以不尊重 FIFO 总线消息?
- r - 如何从文本中折叠具有特定模式的某些字符串?
- excel - 跨不同工作表的索引匹配
- angular - Angular Nebular 样式不适用于 NbChatComponent
- php - 为什么我可以用不同的名称扩展这个类?
- sql - SQL 语句的返回计数