Laravel将目录视为其路由

时间:2019-05-15 09:46:49

标签: laravel-5 apache2 virtualhost

我在数字海洋中有一个Laravel应用程序apache2服务器。

主域example.com指向/var/www/html/domain/laravel_app/public/

现在我希望example.com/test指向/var/www/html/domain/test/public/

但是,当我输入example.com/test时,发生的问题是test在第一个应用程序中被路由了,而不是转到/var/www/html/domain/test处的目录

我还创建了虚拟主机文件,

对于第一个应用程序,文档根目录指向/var/www/html/domain/laravel_app/public/

对于secondapp,文档根目录指向/var/www/html/domain/test/public/

即使那样,它仍被视为路线。

1 个答案:

答案 0 :(得分:1)

您不能在vhosts条目中将子文件夹定义为ServerName。相反,您必须使用别名。您对VirtualHost的Apache配置应如下所示:

<VirtualHost *:80>
    DocumentRoot /var/www/html/domain/laravel_app/public/
    ServerName example.com
    Alias /test /var/www/html/domain/test/public/ 
</VirtualHost>

因此,对example.com/test的调用使用文件夹 / var / www / html / domain / test / public /

要使“测试” Laravel安装正常工作,您必须修改公共文件夹中的.htaccess文件,并在RewriteEngine On行之后添加Rewrite Base。

RewriteEngine On
RewriteBase /test

也不要忘记重启Apache。