[英]Laravel 5.2 routes work only on root directory
當Laravel安裝在不是根域的文件夾中時,我無法訪問我的路由(404)。
例如,如果我在根域中安裝Laravel並添加路由anyroutes
我可以anyroutes
地訪問localhost/anyroutes
。
但
如果我在類似localhost/project/
的文件夾中安裝Laravel並添加該路由: localhost/project/public/anyroutes
它將得到404。我不得不提到localhost/project/public/index.php/anyroutes
將起作用。
我在Laravel的早期版本中沒有這個問題。
我怎樣才能解決這個問題?
Apache(XAMPP),PHP 7,啟用了mod_rewrite
並...
.htaccess
文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
apache conf:
<Directory />
Allowoverride All
# AllowOverride none
Require all denied
</Directory>
DocumentRoot "E:/projects"
<Directory "E:/projects">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
這是我的.htaccess
文件。
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.