我的/公共目录是一个符号链接3 +乘客3 + nginx 0.8?

我正在放置一个rails部署,其中public目录是系统上另一个目录的符号链接。 这是在nginx上的乘客3 .8。 它似乎不喜欢那种设置。 Nginx默认总是遵循符号链接,所以AFAIK不是做相当于Apache + FollowSymLinks的问题。

更新

看起来像这里覆盖:http://www.modrails.com/documentation/Users%20guide%20Nginx.html#application_detection

请注意,Nginx的Phusion Passenger不能解析根路径中的任何符号链接。 例如,假设你的根指向/home/www/example.com,而这又是/webapps/example.com/public的符号链接。 Nginx的Phusion Passenger将检查/home/www/config/environment.rb,而不是/webapps/example.com/config/environment.rb。 这个文件当然不存在,因此Phusion Passenger不会为这个虚拟主机激活自己,并且很可能会看到Nginx默认目录处理程序生成的一些输出,例如Forbidden错误消息。

机架应用程序的检测通过相同的机制发生,除了Phusion Passenger将查找config.ru而不是config / environment.rb。

所以我想知道config.ru的一些正确的符号链接是否可以做到这一点。


我认为不可能使用符号链接的公共目录。 我能想到的唯一解决方法是将符号链接到公共目录中的任何文件和目录。

# public folder: /data/public
# app folder: /webapp/
mkdir -p /webapp/public && ln -sf /data/public/* /webapp/public/

对于/ data / public中的每个新文件或目录,都必须再次运行此命令。


你不能使用以下内容:

mount --bind /original_path /your_ngnix_root_path

而不是使用符号链接? 对于ngnix这将是一个通常的目录,为什么它会指向另一个目录,因为你想它。

链接地址: http://www.djcxy.com/p/5551.html

上一篇: Can my /public directory be a symlink with rails 3 + passenger 3 + nginx 0.8?

下一篇: Can't see my HTML5 ads uploaded to my AdMob account in my app