我无法将静态站点部署到Netlify

时间:2020-07-19 15:22:11

标签: html deployment netlify

我正在尝试在Netlify上部署一些ui组件。但是,它无法识别子文件夹中的index.html文件。因此,我的部署站点上没有任何显示。另外,所有3个索引文件都有彼此的链接。这是我的文件结构

├── ui-components
    ├── blog-cards
    │    └── index.html
    ├── login
    │    └── index.html
    ├── ads-manager
    │    └── index.html

我是否必须删除子文件夹并带出索引文件才能将其部署到Netlify上?或者有什么解决方法?

编辑:

通过这样做,我取得了一些进展,而不是按照建议将_redirects文件放在应用的根目录中

/        /blog-cards/index.html    200
/login   /login/index.html         200
/ads-manager     /ads-manager/index.html   200

它正在blog-cards文件夹中找到我的index.html,但是现在没有加载我的CSS文件。完整的文件夹结构

├── ui-components
    ├── blog-cards
    │    └── index.html
    │    └── style.css
    │    └── images

这里是netlify site

的链接

1 个答案:

答案 0 :(得分:0)

您没有主index.html文件,这就是为什么部署的站点上没有任何内容的原因。您应该在此处添加内容,甚至只是空白页面或带有其他项目链接的占位符。

您可能不必这样做,只需浏览到<siteurl>/ui-components/blog-cards,它应该可以工作。


在进一步评论后更新。

如果有一个子文件夹,您希望网站在登陆时自动转到该子文件夹,则可以使用Redirects. 例如,将以下内容放在应用程序根目录中名为_redirects的文件中即可完成我认为您需要的工作:

/        /ui-components/blog-cards    200
/login   /ui-components/login         200
/ads     /ui-components/ads-manager   200

(状态码为200表示将在后台进行重定向,从而使URL保持清洁,如您所说。)


更新

是的,因此转发使.css文件无法加载。

<link rel="stylesheet" href="style.css"> 将查看当前URL并添加style.css,这显然不是您想要的。

您可以更改为使用302转发,这意味着将显示新的(不好的)URL,但是CSS路径可以正确解析。

或者,您可以添加第二个样式表链接来查找./blog-cards/style.css

或者,如果css足够小,则可以内联它,使其更简单。