我正在尝试使用 Envoyer.io 来部署我的代码,但遇到了一些问题。
该实用程序创建两个文件夹,current
并在文件夹中创建指向最新版本的 . 符号releases
链接。current
releases
所以我的目录结构是这样的:
- 公共的html
- current - 符号链接到 releases/{release_id}
- 发布
- {发布编号}
- 民众
- (其他内容)
- {发布编号}
我需要所有请求都转到current/public
目录,使其成为 webroot,而不是public_html
。
我尝试了将我的 webroot 设置为的明显选项public_html/current/public
,但随后出现了错误:Symbolic link not allowed or link target not accessible: /home/mysite/public_html/current
我尝试过Options +FollowSymLinks
在我的.htaccess
文件中进行各种修改,但都没有成功。我认为我无法访问 Apache conf 文件,因为这是一个共享主机。
我将非常感激有关此事的任何指导。
答案1
我忍不住重复一遍:
.htaccess
大多数在 ServerFault 上使用和询问它的人.htaccess
根本不应该使用它,因为这是一个从未打算用于最终用户的解决方案对于管理员:
你应该完全避免使用
.htaccess
文件如果您有权访问 httpd 主服务器配置文件。使用.htaccess
文件会降低 Apache http 服务器的速度。任何可以包含在文件中的指令.htaccess
最好设置在 Directory 块中,因为它将具有相同的效果且性能更好。
更多信息请参见阿帕奇手动的
为了能够使用FollowSymlinks
.htaccess
主服务器配置需要通过设置文件中的指令来允许该AllowOverride All
选项,或者当使用稍微不那么慷慨的设置时,需要使用AllowOverride Option=FollowSymlinks
指令,因为它不是AuthConfig
、或 的FileInfo
默认分组的一部分。Indexes
Limit