Ruby on rails 可以更改RAILS\u根目录吗?

Ruby on rails 可以更改RAILS\u根目录吗?,ruby-on-rails,ruby,Ruby On Rails,Ruby,在呻吟之前,我的客户正在使用Godaddy来托管他的rails应用程序。我已经设法让这个应用程序为他工作,但是Godaddy使用了一个sym链接指向这个附加了网站根的应用程序 www.yoursite.com/myrailsapp 我已经试着把它放在环境中了 基本上,假设所有链接都是这样工作的: www.yoursite.com/link1 但它却变成了: www.yoursite.com/myrailsapp/link1 有没有办法让RAILS\u根指向实际的RAILS根应用程序目录?RAIL

在呻吟之前,我的客户正在使用Godaddy来托管他的rails应用程序。我已经设法让这个应用程序为他工作,但是Godaddy使用了一个sym链接指向这个附加了网站根的应用程序

www.yoursite.com/myrailsapp

我已经试着把它放在环境中了

基本上,假设所有链接都是这样工作的:

www.yoursite.com/link1

但它却变成了:

www.yoursite.com/myrailsapp/link1


有没有办法让RAILS\u根指向实际的RAILS根应用程序目录?

RAILS\u根只在boot.rb中定义。虽然你不应该改变它,但没有什么能阻止你。它通常位于文件的最开头,就在“不要更改此”请求之后,看起来像:

RAILS_ROOT = "#{File.dirname(__FILE__)}/.." unless defined?(RAILS_ROOT)

RAILS\u ROOT仅在boot.rb中定义。虽然你不应该改变它,但没有什么能阻止你。它通常位于文件的最开头,就在“不要更改此”请求之后,看起来像:

RAILS_ROOT = "#{File.dirname(__FILE__)}/.." unless defined?(RAILS_ROOT)
这是否有效:

RAILS_ROOT=“/home/#{File.dirname(File)}/。”除非定义?(RAILS_ROOT)

,否则此操作是否可以:


RAILS_ROOT=“/home/#{File.dirname(File)}/”除非定义?(RAILS_ROOT)

我不认为这是一个
RAILS_ROOT
问题,但更像是一个虚拟主机问题。域没有将
DocumentRoot
设置为Rails公共目录。

我认为这不是一个
Rails\u ROOT
问题,而是一个虚拟主机问题。域没有将
DocumentRoot
设置为Rails公共目录。

正如Garrett提到的,这肯定是一个虚拟主机问题。RAILS_ROOT是指向服务器上文件系统中应用程序位置的目录指针,而不是URL中的位置


根据应用程序的部署情况(Passenger、FastCGI、mongrel等),有几种解决方法。你要寻找的是如何设置你的应用程序在你的域的子目录中运行。

正如Garrett提到的,这绝对是一个虚拟主机问题。RAILS_ROOT是指向服务器上文件系统中应用程序位置的目录指针,而不是URL中的位置


根据应用程序的部署情况(Passenger、FastCGI、mongrel等),有几种解决方法。您想了解的是如何设置应用程序在域的子目录中运行。

您可以查看如何使用.htaccess将/*的请求路由到public/*或诸如此类。您可以查看如何使用.htaccess将/*的请求路由到public/*或诸如此类。