Heroku静态站点切换到新页面时不加载页面数据
Heroku static site not loading the page data when switching to new pages
在Heroku上创建一个简单的静态站点:https://devcenter.heroku.com/articles/static-sites-ruby.
当我在浏览器中本地打开页面时,一切正常。我点击链接,然后进入我想要的页面。但是当我运行rackup (localhost:9292
)或将其推送到heroku时,主页加载,然后如果我尝试去page2.html
之类的东西,url加载,但浏览器仍然显示来自主页的数据。
我创建了一个简单的例子:https://peaceful-atoll-24169.herokuapp.com。我有一个索引页,上面有Hello
。它应该链接到上面有Yo
的页面。当你点击链接时,它会跳转到页面,但不会改变页面内容。
你知道是怎么回事吗?我觉得这可能是由于我的config.ru文件?这是它的内容。
use Rack::Static,
:urls => ["/images", "/js", "/css"],
:root => "public"
run lambda { |env|
[
200,
{
'Content-Type' => 'text/html',
'Cache-Control' => 'public, max-age=86400'
},
File.open('public/index.html', File::RDONLY)
]
}
你到底想做什么?您是否希望创建一个可以在Heroku上托管的Rails项目?如果是,有一个更好的,更简单的方法,从你的本地机器使用一个由heroku创建的gem。如果你需要更多关于在heroku上推广/托管应用的帮助,请告诉我。
假设您已经在本地机器上安装了rails,如果没有,您可以使用此链接安装rails1. 从终端或命令窗口创建一个新的rails应用程序。使用rails new name-of-app
创建一个新的rails应用程序2. 将目录更改为您的name-of-app文件夹,并确保rails服务器运行,您可以预览应用程序。从当前的name-of-app文件夹中运行rails server
来预览应用程序。在MacOS上可以通过"Command+C"停止服务器运行,在PC上可以通过"Ctrl+C"停止服务器运行3.为你的应用程序文件初始化一个git存储库,运行git init
,然后运行git add -A
,然后运行git commit -m "Initial commit of app"
,然后运行git push
(确保你从应用程序名称目录中执行此操作)4. 组织你的Gemfile来包含这个,从默认数据库中删除sqlite以便在开发环境中使用。你可以在我的github repo
group :development, :test do
# Use sqlite3 as the database for Active Record
gem 'sqlite3'
# Call 'byebug' anywhere in the code to stop execution and get a debugger console
gem 'byebug', platform: :mri
end
group :production do
gem 'pg'
gem 'rails_12factor'
end
- 运行
bundle install
在name-of-app/app/controllers文件夹中创建一个欢迎控制器类欢迎控制器<程序控制器def指数>程序控制器def指数>
结束结束检查在这里在配置/路由中,welcome#index的根路由。rb
root 'welcome#index'
见此处- 在你的app/views/文件夹下创建一个欢迎文件夹,并在文件夹中创建一个index.html.erb文件,并在其中填写
welcome to my app
- 预览你的应用程序运行
rails server
,确保它进入索引页。 通过重复步骤3将代码提交到git。 - 通过运行
heroku create
创建一个heroku应用程序(确保您在本地机器上安装了heroku toolbet,并使用heroku login
登录) - 运行
git push heroku master
将代码项目部署到heroku提示:要更改应用程序的名称,请运行heroku rename newnameofyourapp
我希望这对你有帮助。
- 正在等待呈现图表,直到加载数据为止
- ng绑定和ng href问题.ng href未从控制器加载数据
- 单击按钮时加载数据
- 在reactjs组件中预加载数据
- Highcharts可以从服务器加载数据,但不能更新
- AngularJS promise在加载数据之前得到解决
- 在Knockout JS中搜索从DB加载数据的项目
- 如何在angular js中使用$emit后重新加载数据
- 构建多个图表时,HighCharts加载数据的速度较慢
- 加载初始网站后在后台加载数据
- ExtJS网格未从Ext.data.XmlStore加载数据
- 数据表 AJAX 筛选器重新加载数据
- select2 使用 AJAX 加载数据不能选择任何选项
- 在 Metro 风格应用中启动时加载数据
- 需要帮助使用 AJAX 和其他一些东西加载数据
- Vue 不加载数据
- 向右滚动加载数据
- 为SEO的数据绑定JS预加载数据
- mysql循环-预加载数据
- 无法使用JSON加载数据表