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

Posted piwefei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
版权声明:本文为博主原创文章,转载请附上博文链接!

以上是关于Laravel5.5去除URL中的index.php生成优雅链接的主要内容,如果未能解决你的问题,请参考以下文章

laravel5.5路由使用name的好处

Tomcat删除index.php Codeigniter

安卓使用webview如何去除url中的广告

Angular项目实战Angular2+如何去除URL中的#号

laravel5.5学习2-路由系统

AWS Elastic Beanstalk 在 url 中插入文件夹