通过 .htaccess 更改根文件夹
我有一个与域名关联的共享托管帐户,并且根文件夹(如果这是错误的术语,请纠正我)设置为 /
,以便服务器上的所有文件都是公开的/可以通过浏览器。
我可以使用 .htaccess 或其他内容将根文件夹更改为 /example.com/public/
之类的文件夹吗?
I've got a shared hosting account associated with a domain name and the root folder (correct me if that's the wrong term) is set to /
so that all files on the server are public / accessible through the browser.
Can I use .htaccess or something to change the root folder to something like /example.com/public/
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
无法在 .htaccess 中设置 DocumentRoot 指令文件,仅在服务器配置中。由于您很可能没有修改服务器设置的权限,因此您唯一的解决方案是使用一些重写魔法,如 clmarquart 已经提到了。
The DocumentRoot directive can't be set in a .htaccess file, only in the server config. As you most likely don't have the privileges to modify the server settings your only solution is to use some rewrite magic as clmarquart already mentioned.
我使用 bluehost...这对我有用:
当您使用共享主机并拥有多个域名时,这非常有用。
您的主域设置为 public_html 但您的附加域是 public_html 内的子文件夹
这使得您不必将所有主域名文件与附加域文件夹混合...每个域都可以位于他们自己的文件夹...
I use bluehost... this is what works for me:
This is helpful when you are on shared hosting, and have multiple domain names.
Your primary domain is set to public_html but your add-on domains are subfolders inside public_html
This makes it so you don't have to have all your primary domain name files be mixed with add-on domain folders... each domain can be in their own folder...
我用这个:
I use this:
如果我理解正确,以下内容应该有效。
这会将所有不以
/public/
开头的请求重定向到以/public/
开头的 URL。希望有帮助。
If I'm understanding correctly, the following should work
This will redirect all requests that do not begin with
/public/
to URL that does.Hope that helps.
这就是我总是在我的框架中使用它的方式:
This is how i always use it in my framework: