在使用Apache情况下:
Laravel 框架通过 public/.htaccess
文件来让网址中不需要 index.php
。如果你的服务器是使用 Apache ,请确认是否有开启 mod_rewrite
模块。
假设 Laravel 附带的 .htaccess
文件在 Apache 无法生效的话,请尝试下面的方法:
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
If your web host doesn't allow the FollowSymlinks
option, try replacing it with Options +SymLinksIfOwnerMatch
.
内容引用自:https://docs.golaravel.com/docs/5.0/configuration/#pretty-urls
下面说下按照上面修改还没成功的话, 有可能的原因
1. apache 没有开启 LoadModule rewrite_module
找到httpd.conf文件里面的 LoadModule rewrite_module 去掉前面的#. 重启apache
2. 开启LoadModule rewrite_module后, 还需要让apache服务器支持.htaccess
修改一下apache的httpd.conf,
查找
Options FollowSymLinks
AllowOverride None
改为
Options FollowSymLinks
AllowOverride All
最后重启apache