使用laravel:服务器的配置

来源:互联网 发布:淘宝消费者规则在哪看 编辑:程序博客网 时间:2024/06/15 17:08

在使用laravel时,public文件夹是所有请求的入口,而public下的index.php将处理在public文件夹下找不到对应文件的url请求(而不会返回404错误),这看上去是很奇怪的,但却是可以实现的(使用的是服务器的“改写”机制),我们需要对服务器(我这里使用的是wamp,其它服务器应该也是同样的思路)进行配置:

public 文件夹下的.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]</IfModule>

Apache服务器httpd.conf文件配置

  • 分别找到下面这两行
    LoadModule negotiation_module modules/mod_negotiation.so
    LoadModule rewrite_module modules/mod_rewrite.so
    若前面有#号(被注释),去掉#号。
  • 找到DocumentRoot “c:/wamp/www/”
    把c:/wamp/www/修改成public文件夹所在的路径。比如说我的public文件夹放在c:/wamp/www/blog/public下。我就要改成:DocumentRoot “c:/wamp/www/blog/public”
    这样子服务器的根目录就改成c:/wamp/www/blog/public了,用localhost/来请求时,返回的是laravel public下的index.php
  • 找到 Directory “c:/wamp/www/”
    改成public文件夹所在的路径。比如说与前面的例子对应的,要改成Directory “c:/wamp/www/blog/public”

进行了上面的配置这后,laravel就可以在服务器中正常运行了,所有在public文件夹下找不到对应文件的请求都会被index.php所处理。

1 0
原创粉丝点击