gpt4 book ai didi

ruby - 运行 .rb Ruby 文件

转载 作者:数据小太阳 更新时间:2023-10-29 08:28:41 24 4
gpt4 key购买 nike

在网络浏览器中运行 .rb 文件需要什么?

(我在 ruby​​ 的第一天)

我有 Apache 服务器(我来自 PHP)和 passenger。终端证明:

gundars@linuxr528:~$ apache2ctl -t -D DUMP_MODULES
passenger_module (shared)

ruby 1.9.3p0(2011-10-30 修订版 33570)[x86_64-linux]

我还安装了 rails 等,尝试用 rails 制作一个快速应用程序并且运行良好。

现在我只想在浏览器中打开 .rb 文件,它提示我保存它。这是它在我的浏览器中的样子,点击后弹出右侧窗口,询问保存位置。 enter image description here

关于 Ruby 和这个文件的条目是:

apache2.conf:

LoadModule passenger_module /home/gundars/.rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11/ext/apache2/mod_passenger.so
PassengerRoot /home/gundars/.rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.11
PassengerRuby /home/gundars/.rvm/wrappers/ruby-1.9.3-p0/ruby

虚拟主机.conf

<VirtualHost *:80>
ServerName tictactoe.ruby.dev
DocumentRoot "/localhost/sandbox/RUBY/tictactoe/"
ErrorLog /var/log/rubyonrails2.log
</VirtualHost>

/etc/hosts

127.0.0.1   tictactoe.ruby.dev

所以问题 - 在网络浏览器中运行 .rb 文件需要什么?我以为这就是 passenger 的用途...

最佳答案

从 APACHE 运行 .rb 脚本的步骤:

编辑您的 apache 配置文件(例如/etc/httpd/conf/httpd.conf)。更新或创建一个 AddHandler 设置,使其包含“.rb”,例如:

AddHandler cgi-script .cgi .rb

创建您的 ruby​​ 脚本 (.rb)。确保你有一个 shebang (#!) 指向你的 ruby​​ 解释器。如果您不确定 ruby​​ 在哪里,请使用“which”命令。

#!/bin/ruby
puts "Content-type: text/html"
puts
puts "<html>"
puts "<body>"
puts "<h3>Hello</h3>"

在您的 .rb 文件上设置适当的所有权和执行权限 (x),以便 apache 可以执行它,例如:

-rwxr-x--- 1 apache apache 163 Nov 26 10:55 index.rb

这可能就是您需要做的全部。如果您的脚本仍未执行,我尝试的第一个故障排除步骤是暂时禁用 SELinux(使用 setenforce 0)。

关于ruby - 运行 .rb Ruby 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9039391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com