在Joomla站点的子目录上设置Rails应用程序

时间:2012-09-16 08:49:49

标签: ruby-on-rails-3 joomla2.5 apache2.2

我的域根目录中有一个joomla网站,即www.myjoomlasite.com,我在www.myrailssite.com/railsapp上有一个rails应用程序

我想在http://www.myjoomlasite.com的子目录中部署rails应用程序,期望在http://www.myjoomlasite.com/railsapp中可以使用rails应用程序。

在浏览器中点击 www.myjoomlasite.com/railsapp 后执行所有必要步骤后,我将其正确地重定向到http://www.myjoomlasite.com/railsapp/admins/sign_in

然后,尽管显示了 sign_in 页面,但它显示了joomla的错误页面“404找不到页面”

我的问题是:

  1. 如果rails应用程序有任何问题,它应该显示rails 错误页面,但为什么joomla的错误页面?
  2. 在rails应用程序生产日志中,为什么显示在1毫秒内完成401未授权
  3. 如何在我的joomla网站的子目录中部署rails应用程序?
  4. 其他信息:

    rails应用程序生产日志

    Started GET "/railsapp" for 24.5.7.81 at 2012-09-14 08:41:36 -0700
    Processing by HomeController#index as HTML
    Completed 401 Unauthorized in 1ms
    

    更新

    我找到了'404'背后可能的原因。我在文档根目录中有.htaccess文件。这个.htaccess文件停止rails应用程序渲染。

    是否可以在.htaccess文件中进行一些更改显示,rails app可以正常呈现?

1 个答案:

答案 0 :(得分:0)

文档根目录中有.htaccess文件。这个默认的.htaccess文件附带了joomla源代码(因为htaccess.txt,字母被重命名为.htaccess)。根据一些 RewriteCond ,有一个 RewriteRule 。所有重写条件,都是默认的htaccess文件,停止我的“/ railsapp”url进行渲染。为了允许通过我的“/ railsapp”,我在.htaccess中添加了以下 RewriteCond

RewriteCond %{REQUEST_URI} !^/railsapp

如果任何url以'railsapp'前缀开头,那么这些url将不会通过重写规则重新编写并直接访问该URL。