Laravel5.5去除URL中的index.php生成优雅链接

在使用Apache情况下:

Laravel 框架通过 public/.htaccess 文件来让网址中不需要 index.php。如果你的服务器是使用 Apache ,请确认是否有开启 mod_rewrite 模块。

假设 Laravel 附带的 .htaccess 文件在 Apache 无法生效的话,请尝试下面的方法:

<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>

 


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


---------------------
作者:cy-chenyue
来源:CSDN
原文:https://blog.csdn.net/helloyuechen/article/details/78948484
版权声明:本文为博主原创文章,转载请附上博文链接!

上一篇:Apache 防盗链的技术小结


下一篇:虚拟主机.htaccess伪静态(URL重写)建立多站点