1

我正在尝试使用 Kemal 在 Crystal 中编写一个简单的静态站点。

通过这个页面,我应该没问题,但是当我尝试加载网站时得到 404。

我的程序看起来像这样(你可以看到我注释掉的所有代码试图追踪问题)

#require "./LiedThisWeek/*"
require "kemal"

#module LiedThisWeek
  # TODO Put your code here
#end

#finder = LieFinder.new
#handler = HyperTextHandler.new finder
#indexPath = "public/index.html"
#
#spawn do
#   loop do
#       finder.refresh
#       File.write indexPath, handler.getDoc
#       sleep 60.second
#   end
#end

Kemal.run

这是我的目录结构的样子:

.
├── LICENSE
├── LiedThisWeek
├── README.md
├── lib (removed for brevity)
├── public
│   ├── css
│   │   └── style.css
│   ├── images
│   │   ├── fireworks.jpg
│   │   └── sad.jpg
│   └── index.html
├── shard.lock
├── shard.yml
├── spec
│   ├── LiedThisWeek_spec.cr
│   └── spec_helper.cr
└── src
    ├── LiedThisWeek
    │   ├── HyperTextHandler.cr
    │   ├── Lie.cr
    │   ├── LieFinder.cr
    │   └── version.cr
    └── LiedThisWeek.cr

32 directories, 112 files
4

1 回答 1

2

凯末尔作者在这里。

Kemal 默认不index.html作为/。但是,您可以通过redirect

get "/" do |env|
  env.redirect "index.html"
end
于 2017-03-25T22:18:00.623 回答