0

CSS 在使用 Helicon Zoo 和 Sinatra 的 IIS 7.5 上不能正常工作。

这是目录结构:

welcometo
 --public
  --styles
   --welcometo.css

我使用 Webrick 测试了我的网站,它运行良好。

当我转到 localhost:4567/styles/welcometo.css 时,样式表显示在 Web 浏览器中。

当我访问 IIS 站点 /styles/welcometo.css 时,我收到此错误:

Try this:
get '/public/styles/welcometo.css' do
    "Hello World"
end

我从Helicon Zoo 的 Sinatra 页面复制了 web.config 。这是静态文件部分:

<!-- Send static files through IIS -->
<rewrite>
    <rules>
            <rule name="Avoid Static Files" stopProcessing="true">
                <match url="^(?!public)(.*)$" ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll" trackAllCaptures="true">
                        <add input="{APPL_PHYSICAL_PATH}" pattern="(.*)" ignoreCase="false" />
                        <add input="{C:1}public\{R:1}" matchType="IsFile" />
                    </conditions>
            <action type="Rewrite" url="public/{R:1}" />
                </rule>
        </rules>
</rewrite>

有任何想法吗?

4

1 回答 1

1

我们忘记包含 /public 文件夹的 web.config 示例,抱歉。您可以在此处的 Ruby on Rails 安装页面上看到此示例:IIS 上的 Ruby on Rails (2.3.x 和 3.xx) 请将此 web.config 文件放入 /public 文件夹:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <handlers>
                <!-- 
                This disables Helicon Zoo handler and makes IIS processing static
                files directly.
                -->
                <remove name="rails.project#x64" />
                <remove name="rails.project#x86" />
        </handlers>
    </system.webServer>
</configuration>
于 2012-07-23T18:04:36.883 回答