laravel - Apache 刷新页面后返回 403 禁止
问题描述
我和一所大学一起开发了一个项目。我用 Laravel 做后端(REST API),我的大学用 Vue.js 做前端,但是在集成这两个部分时我们遇到了问题,因为每次我们在浏览器上刷新页面时 Apache 返回 403 禁止。
我们所做的是一个npm run build
Vue.js 项目,然后将生成的文件(index.html、js、css、img...)移动到 Laravel 的公共目录。
我们不确定问题是由于 apache 的配置还是 laravel/vue 的问题。
这是我们 apache 的 httpd.conf 文件:
<VirtualHost *:80>
ServerAdmin user@email.com
DocumentRoot C:\xampp\htdocs\public
ServerName xxxxxx.com
ServerAlias xxxxxx.com
ErrorLog "C:/xampp/error.log"
CustomLog "C:/xampp/access.log" combined
<Directory "C:\xampp\htdocs\public">
Options -Indexes
DirectoryIndex index.php index.html
AllowOverride All
Header set Access-Control-Allow-Origin "*"
Require all granted
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
</Directory>
</VirtualHost>
这是来自 laravel 公用文件夹中 .htaccess 的内容:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Base URL redirects to index
DirectoryIndex index.html
</IfModule>
提前致谢。
解决方案
推荐阅读
- amazon-web-services - 从 Lex 导入时,Alexa 不接受 AMAZON.US_LAST_NAME slotType
- android - java.lang.SecurityException:UID 10194 没有对 content://com.microsoft.office.onenote/clip [user 0] 的权限
- java - Java 错误:“不兼容的类型”消息。从 Coin 类型转换为 int 类型
- url-rewriting - URL 将图像重写到另一个域而不重定向
- php - 关系的 getBeans() 返回空数组
- ios - 如何在 xcode 项目中删除子模块方案?
- ios - Jitsi On iOS 9 通话在连接几秒钟后断开连接
- c# - .NET Core API:在 SwaggerUI 中禁用多路由扩展
- react-native - React Native:如何使用 react-native-sensors 在传感器订阅中添加代码
- .htaccess - 使用 htaccess 重定向所有子域