2017-02-26 190 views
0

比方说,我已经安装上的子文件夹laravel:我把所有的应用程序的东西HTML根外,在“laravel”更名为“公共”目录和HTML根目录下移到。
我可以通过连接到www.mydomain.com/laravel
我用下面的.htaccess在根文件夹的HTML看到应用程序:重定向laravel安装在一个子文件夹,隐藏子文件夹

RewriteEngine on 

RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ 
RewriteCond %{REQUEST_URI} !^/laravel/ 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /laravel/$1 

RewriteCond %{HTTP_HOST} ^(www.)?mydomain.com$ 
RewriteRule ^(/)?$ laravel/ [L] 

现在我可以从www.mydomain直接访问我的网站。 COM
但是我知道我仍然可以从www.mydomain.com/laravel ......因为所有的环节都产生从基础URL开始,菜单和每一个锚的href指向www.mydomain.com/访问laravel ...甚至包含“laravel”的页面的规范链接。
问题:

  1. 是有办法避免这种情况?
  2. 我应该担心这个?

感谢您的帮助。

回答

0

如果您使用的是Apache,你需要配置你的主机。无论是http-vhosts.confhttpd.conf或类似的文件。

<VirtualHost > 
    ... 
    <Directory "path/to/your/root/html/laravel"> 

    </Directory> 
</VirtualHost> 

因此,所有你需要做的是改变的目录路径直接指向您的laravel文件夹html目录内。

如果你这样做,删除您在.htaccess

RewriteCond %{REQUEST_URI} !^/laravel/ 
... 
RewriteRule ^(/)?$ laravel/ [L] 

加线和.htaccess文件放回laravel目录中,以便它可以从那里直接服务页面。