【发布时间】:2011-10-01 09:53:21
【问题描述】:
我有一个简单的投资组合网站,它只是一组静态 HTML 文件和一些 jQuery。
现在我正在尝试添加一个通过 AJAX 提交的简单联系表单,因此我需要以某种方式在服务器端处理请求。
整个事情都在一个 VPS 上运行,许多其他 Rails 应用程序都在 nginx 上。如果我安装了 PHP,只需添加一个简单的 PHP 文件并通过 AJAX 直接调用它就很容易了,但我真的不知道如何在 Ruby 中做到这一点。
我基本上有
server {
listen 80;
server_name example.com;
root /var/apps/example/com;
}
对于静态网站,现在我需要以某种方式说,该文件 contact.rb 应该作为 Ruby 文件执行。
我认为使用 Sinatra 可能是个好主意,但我不知道如何将其绑定/路由到域上的特定位置。例如,表单可能会向 example.com/contact 提交 AJAX 请求,然后它会发送电子邮件。
问题是,我可以处理请求的所有其他 Rails 应用程序都在不同的域上运行,所以我不能直接使用 AJAX 调用其他应用程序,我需要创建一个此域上的单独脚本。
我知道我可以重写整个静态网站以在 Sinatra 上运行,这样可以消除这个问题,但我更喜欢用一些简单的方法来做这件事,因为这只是为了一个简单的联系表格。
【问题讨论】: