Laravel的网站的默认公共访问目录是当前项目下的public目录,但是某些情况下我们只能将项目代码部署到主机的网站根目录中。比如在某些虚拟主机上搭建网站的时候,我们可能对于该主机网站根目录的上级目录没有写入权限。这时将项目部署到主机上后,我们要访问项目就需要在项目网址后加上”/public”才能访问。比如项目地址为: http://example.com,要访问项目的时候就需要使用 http://example.com/public。
这样访问项目的url就会很丑陋,这时我们可以通过创建.htaccess来实现输入http://example.com实际访问http://example.com/public的效果。在laravel项目根目录下创建.htaccess文件,输入以下代码就可以实现。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
注意:网站的REWRITE模块必须为开启状态。