我正在研究Laravel项目。我正在从网址中删除“ / public”,但仅在welcome
页上有效,而其他页面,例如/login
,/register
则无法正常工作。显示错误。
在此服务器上找不到请求的URL / GME /登录。
位于本地主机端口80的Apache / 2.4.18(Ubuntu)服务器
但是当我在URL中使用public/index.php
时,它就起作用了。
这是我的root
.htaccess
文件代码。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^public/
RewriteRule ^(.*)$ public/$1 [L] #relative substitution
RewriteRule ^ index.php
这是我的/public/.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]
答案 0 :(得分:0)
我认为您需要将此添加到 GME 目录.htaccess
RewriteEngine On
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]