laravel 去掉index.php伪静态的操作方法
1、首先,让apache服务器支持rewrite
可以在apache配置文件中定义rewrite规则,是全局的,无论哪个应用都实用
?1 2 3 4 5 6 7 | //httpd.config Listen 80 RewriteEngine on ---将rewrite开启 LoadModule rewrite_module modules/mod_rewrite.so 前面的注释去掉 |
在Directory中配置:
?1 2 3 4 5 6 7 8 9 10 11 | <Directory "/www/poem/public" > Options Indexes FollowSymLinks AllowOverride All ----这项一定要进行修改 Order deny,allow Allow from all </Directory> |
2、配置.htaccess文件 ---find / -name .htaccess 来查找此文件
?1 2 3 4 5 6 7 8 9 10 11 12 13 | <IfModule mod_rewrite.c> Options +FollowSymLinks RewriteEngine On </IfModule> <IfModule mod_rewrite.c> RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d |
RewriteRule ^(.*)$ index.php/$1 [L] ---这句话的含义是:任何访问网站的路径都映射成index.php/xxx,其中xxx是$1 与 (.*)中的内容进行匹配 例如我们输入http://192.168.0.222/about -->http://192.168.0.222/index.php/about
</IfModule>
3、如果是专门针对laravel进行配置,则在app/app.php中加入
index=>'', //laravel4.1中没有此项,直接手写加入即可
如果还不行
先在httpd.conf注释掉
?1 2 3 4 5 6 | #<Directory /> # Options FollowSymLinks # AllowOverride All # Order deny,allow # Deny from all #</Directory> |
然后在httpd-vhost修改如下,
?1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <VirtualHost *:80> ServerAdmin none@none.com DocumentRoot "E:/www/learnlaravel5/public" ServerName le DirectoryIndex index.php index.html ErrorLog "logs/dummy-host.2012-20090214YX.domain-error.log" CustomLog "logs/dummy-host.2012-20090214YX.domain-access.log" common <Directory "E:/www/learnlaravel5/public" > Options -Indexes +FollowSymLinks AllowOverride all Order allow,deny Allow from all #Require all granted </Directory> </VirtualHost> |
以上这篇laravel 去掉index.php伪静态的操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://www.cnblogs.com/wicub/p/4818776.html
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。