2014-11-04 84 views
3

我设置了一个共享的主机上的Symfony2的项目,我有一些问题,做事情子文件夹。 Symfony2的默认情况下都有自己的调度控制器或主文件内/web目录(在许多系统中什么文件index.php是),所以如果我把所有的项目public_html在共享主机,那么它不会工作,直到我追加/web到底在URL上。由于他们知道该域的页面,因此这对用户来说是不好的和嘈杂的。我试图让使用.htaccess如下重定向:永久重定向与的.htaccess

//301 Redirect Entire Directory 
RedirectMatch 301 /(.*) /web/$1 

//Prevent directory listings 
Options All -Indexes 

但由于托管说,这行是不好的.htaccess文件中它不工作,那么如何我能得到这个问题的拼车?

回答

1

在根目录的.htaccess您可以使用此mod_rewrite规则:

//Prevent directory listings 
Options All -Indexes 

RewriteEngine On 

RewriteRule ^((?!web/).*)$ /web/$1 [L,NC,R=301,NE] 
0

你知道当你买一些托管和您第一次FTP到它在你最喜欢的客户端?

您可能会看到这样的事情:

/ 
    ftp/ 
    httpdocs/ 
    access_log.txt 

web/目录是此方案中的httpdocs/。有时目录被称为public_htmlwww,或者只是html

他们在一天结束时,所有同样的事情。

在您的symfony项目中,app/,src/,vendor/目录应该位于公共根目录后面。

通常在控制的服务器,你可以创建在其中指定的文档根目录虚拟主机。但是,如果您尝试上传网站,请将所有内容移至父目录,然后将网页目录重命名为要使用的服务器。