|
2
|
| Sniggerfardimungus · 技术社区 · 17 年前 |
|
|
1
3
我认为您需要的是将文件扩展名与Ruby相关联。我想不可能得到!#在Windows上工作的符号,但是可以让Windows使用特定的解释器自动启动脚本(如第二个示例中所示)。一步一步地讨论你想做的是 here. 您特别需要标题为“为未关联的文件类型创建文件关联”的部分。我认为这将完成你想做的。 |
|
|
2
2
适用于Ruby1.8.6.pxxx和1.9.1.p0的通用解决方案 Windows如下: 编辑文件:c:\ruby\lib\ruby\1.9.1\webrick\httpservlet\cgi_runner.rb 在文件顶部添加以下行: if "1.9.1" == RUBY_VERSION require 'rbconfig' #constants telling where Ruby runs from end 现在,找到最后一行:exec env[“script_filename”] 注释该行并添加以下代码: # --- from here ---
if "1.9.1" == RUBY_VERSION #use RbConfig
Ruby = File::join(RbConfig::CONFIG['bindir'],
RbConfig::CONFIG['ruby_install_name'])
Ruby << RbConfig::CONFIG['EXEEXT']
else # use ::Config
Ruby = File::join(::Config::CONFIG['bindir'],
::Config::CONFIG['ruby_install_name'])
Ruby << ::Config::CONFIG['EXEEXT']
end
if /mswin|bccwin|mingw/ =~ RUBY_PLATFORM
exec "#{Ruby}", ENV["SCRIPT_FILENAME"]
else
exec ENV["SCRIPT_FILENAME"]
end
# --- to here ---
保存文件并重新启动Webrick服务器。 说明: 此代码只是构建一个变量“ruby”,其中包含 “Ruby exe”,以及 (如果在Windows上运行)它将传递附加参数 “c:\ruby\bin\ruby.exe”,到kernel.exe c()方法,以便 可以执行脚本。 |
|
|
3
0
不是真的要争论…但是,当Mongrel速度更快并且使用Windows进行本地编译时,为什么还要麻烦Webrick呢?对于coz,这意味着不需要shebang。 |
|
|
4
0
实际上,可以让Windows识别脚本文件中的shebang符号。它可以用一个相对较短的脚本来完成,比如ruby或autoit。脚本文件的第一行只需要一个相当简单的解析器,以及一些文件操作。当需要脚本文件的交叉兼容性,或者当Windows文件扩展名不够时,我已经这样做了几次。 |
|
|
PHPLover · “支持PHP扩展或功能的端口”实际上是什么意思? 1 年前 |