繁体   English   中英

使用.htaccess永久重定向到子文件夹

[英]Permanent redirect to subfolder with .htaccess

我正在共享主机上设置一个Symfony2项目,我遇到了一些问题。 Symfony2默认情况下它们的调度控制器或主文件(许多系统中的文件是index.php )在/web目录下,所以如果我将所有项目移动到共享主机上的public_html那么它将无法工作,直到我追加/web到URL的末尾。 这对用户来说是坏的和噪音,因为他们知道它的域的页面。 我正在尝试使用.htaccess进行重定向,如下所示:

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

//Prevent directory listings
Options All -Indexes

但它没有工作,因为托管说这条线在.htaccess文件中不好,那么我怎么能解决这个问题呢?

在root .htaccess中,您可以使用此mod_rewrite规则:

//Prevent directory listings
Options All -Indexes

RewriteEngine On

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

你知道什么时候你买了一些托管,你在你最喜欢的客户端制作了第一个FTP吗?

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

/
    ftp/
    httpdocs/
    access_log.txt

web/目录是此场景中的httpdocs/ 有时目录名为public_htmlwwwhtml

他们在一天结束时都是一样的。

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

通常,在受控服务器上,您可以创建指定文档根目录的虚拟主机。 但是,如果您尝试上传网站,请将所有内容移至父目录,并将网络目录重命名为设置使用的服务器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM