如何解决当 index.php 不在 URL 中时,Laravel 8 强制下载而不是在 wamp 上执行 PHP 文件
我正在做一个我在 WAMP 上的项目,现在在一个域上有一个在线副本。 在线一切正常,最近在 wamp 上运行良好,但从昨天开始我遇到了以下问题:
-该项目位于 http://localhost/control/public/,显示登录页面(一切正常) - 登录后,用户将被重定向到 http://localhost/control/public/cp 并且这也可以正常工作,它也可以在 http://localhost/control/public/index.php/cp 上正常工作 - 我有其他页面,例如用户管理部分。如果我使用 URL http://localhost/control/public/index.php/cp/admin/users 它工作正常但如果我从 URL 中删除 index.php 到 http://localhost/control/public/cp /admin/users 我下载了一个文件(包含 public/index.php 的内容) - 其他一些路由适用于两个版本的 URL(有和没有 index.php),如果 index.php 不在 URL 中,其他人会推送下载。
我找不到这背后的任何逻辑,我猜它可能来自 .htaccess 并且已经看到我可以添加 rewriteBase 但我遇到了同样的问题。 这是我的 .htaccess:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
RewriteBase /control/public/
# 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]
# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
任何指针将不胜感激
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。