标签: netlify

有什么办法可以为单个存储库和多个站点提供通用的 netlify.toml 文件吗?

我正在寻找一种方法来定义 netlify 上的两个站点构建,它们来自同一个存储库,使用单个 common netlify.toml. 可以这样做吗?

我有一个名为hugo-dream-plus的 GitHub 存储库,我在 netlify 上配置了两个网站构建,即dream-plus-postsdream-plus-cards。这两个构建共享相同的环境变量和大部分配置,除了构建命令:

hugo --config cards.toml     #For dream-plus-cards
hugo --config posts.toml     #For dream-plus-posts
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一种方法可以让我创建一个通用netlify.toml文件,因为这两个站点的两个版本的存储库都是相同的。

我已经使用Web UI来单独配置每个构建,但是修改每个构建都相当麻烦,这就是为什么我更喜欢上面的场景。

我计划做的是在两个构建之间共享所有配置,除了构建命令之外,该命令将单独定义,如上所示。

hugo netlify

1
推荐指数
1
解决办法
1562
查看次数

Netifly 部署后加载资源失败

我今天早上从 github 存储库在 Netifly 上部署了一个 React 网站。

然后我做了一些更改,将它们推送到 github,并在 Netifly 上触发了一个新的部署。现在该网站是一个空白页面。在控制台中,我收到以下消息:

加载资源失败:服务器响应状态为 404()

所以我在 Netifly 上创建了一个新项目,使用相同的存储库。问题依然存在。这是 Netifly 的临时问题吗?如果没有,我该如何解决?

git github reactjs netlify netlify-cms

1
推荐指数
1
解决办法
1990
查看次数

我可以使用 netlify 的 CDN 来防止每天多次执行 lambda 吗?

我有一个 Netlify 部署的应用程序,它带有一个 lambda 函数,它调用外部 API 来获取一些数据。外部API数据每天更新一次,我希望lambda响应在Netlify的CDN中缓存24小时,所以我不调用lambda函数,从而调用外部API,一天不止一次.

为了测试这一点,我编写了一个简单的 lambda 函数:

exports.handler = function(event, context, callback) {
  callback(null, {
    statusCode: 200,
    body: new Date().toString(),
    headers: {
      'Cache-Control': 'public, s-maxage=86400',
    },
  });
};
Run Code Online (Sandbox Code Playgroud)

当 10 秒后第二次调用端点时,我确实在响应主体中获得了相同的时间,表明响应确实被缓存了。但是当从两个不同的设备(我的电脑和我的 4G 手机,所以不同的 IP 和 ISP)调用它时,我得到了不同的日期,好像每个设备都提供了不同的缓存响应,我可以在 Netlify 的仪表板中看到 lambda 是调用了两次。

关于 Netlify 的 CDN 是如何工作的,我有什么不明白的地方吗?有没有办法实现我正在尝试做的事情?

http cache-control netlify

1
推荐指数
1
解决办法
517
查看次数

在 netlify 中部署 React 应用程序时出现问题

  • 我正在尝试在 netlify 中部署 React 应用程序,如媒体链接所述:https://link.medium.com/nw9ZCh0lrV
  • 所以我使用 Express 服务器来定义构建脚本并在生产模式下设置应用程序
  • 构建脚本在本地计算机中创建并上传到 netlify 站点
  • 显示部署成功的消息
  • 单击 URL 链接时,它会将构建脚本的 GET 请求状态显示为 404
  • netlify URL 链接:https://nostalgic-euclid-4f95ab.netlify.com
  • 你们能帮我看看我的建议有误吗
  • 下面附有应用程序屏幕截图 - 提供下面的代码片段:

服务器.js

const express = require('express');
const favicon = require('express-favicon');
const app = express();

app.use(favicon(__dirname + '/build/favicon.ico'));
app.use(express.static(__dirname));
app.use(express.static(path.join(__dirname,'build')));
app.get('/*', function (req, res) {
    res.sendFile(path.join(__dirname, 'build', 'index.html'));
});
Run Code Online (Sandbox Code Playgroud)

包.json

"scripts" : {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test",
    "eject": "react-scripts eject"
  }
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述
在此输入图像描述

javascript npm reactjs netlify create-react-app

1
推荐指数
1
解决办法
2444
查看次数

如何在 netlify 中将 ejs 视图引擎与 Express 一起使用?

不知道如何将 ejs 视图引擎与 netlify 一起使用

我尝试这样做app.set('view engine', 'ejs'),但没有成功。

const express = require('express');
const path = require('path');
const serverless = require('serverless-http');

const app = express();
const router = express.Router();

// app.set('view engine', 'ejs');

app.use(express.json());
app.use(express.urlencoded({ extended: false }));

app.use('/assets', express.static(path.join(__dirname, 'assets')));

router.get('/', (req, res) => {
  res.render('home');
});

module.exports = app;
module.exports.handler = serverless(app);
Run Code Online (Sandbox Code Playgroud)

我没有得到任何输出。

javascript express netlify

1
推荐指数
1
解决办法
1969
查看次数

Netlify Lambda 函数:保持获取路径必须是字符串类型

我正在使用firebase-admin检索数据并使用NetlifyLambda 函数来调用服务。基本上就是这样。

这是我的代码:

exports.handler = (event, context, callback) => {
  const { id = "toronto" } = event.queryStringParameters;
  const cityRefs = dbInstance.collection("cities");
  console.log("req.params.id", id);

  if (id === "mumbai") {
    console.log("in here", id);
    let cityRef = cityRefs.doc("id1");
    return cityRef
      .get()
      .then(doc => {
        if (!doc.exists) {
          console.log("No such document!");
        } else {
          console.log("Document data:", doc.data());
          callback(null, {
            statusCode: 200,
            body: doc.data()
          });
        }
      })
      .catch(err => {
        console.log("Error getting document", err);
        callback(err);
      });
    }
Run Code Online (Sandbox Code Playgroud)

}

我不断收到以下错误。我不确定我做错了什么。

函数调用失败:类型错误 …

lambda node.js firebase netlify google-cloud-firestore

1
推荐指数
1
解决办法
3839
查看次数

在 Netlify 上构建 gatsby 站点 - 错误:回调已被调用

我无法解决在 netlify 上构建 gatsby 站点的问题。几天以来,我收到以下错误:

3:17:52 PM: error UNHANDLED EXCEPTION Callback was already called.
3:17:52 PM: 
3:17:52 PM:   Error: Callback was already called.
3:17:52 PM:   
3:17:52 PM:   - async.js:16 throwError
3:17:52 PM:     [repo]/[neo-async]/async.js:16:11
3:17:52 PM:   
3:17:52 PM:   - async.js:2818 
3:17:52 PM:     [repo]/[neo-async]/async.js:2818:7
3:17:52 PM:   
3:17:52 PM:   - next_tick.js:132 _combinedTickCallback
3:17:52 PM:     internal/process/next_tick.js:132:7
3:17:52 PM:   
3:17:52 PM:   - next_tick.js:181 process._tickCallback
3:17:52 PM:     internal/process/next_tick.js:181:clock9
Run Code Online (Sandbox Code Playgroud)

包.json

{
  "name": "gatsby-starter-netlify-cms",
  "description": "Example Gatsby, and Netlify CMS project",
  "version": "1.1.3",
  "author": "Austin Green",
  "dependencies": { …
Run Code Online (Sandbox Code Playgroud)

gatsby netlify

1
推荐指数
1
解决办法
1660
查看次数

运行生产版本时 React 应用程序崩溃

我可以在本地开发服务器上完美地运行我的react-app(使用create-react-app样板),但是当我使用它进行编译npm run build然后使用服务器运行它时(我尝试了netlify和本地http服务器),我只收到此错误并且页面未加载:

classCallCheck.js:1 Uncaught RangeError: Maximum call stack size exceeded
    at Object.a (classCallCheck.js:1)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
    at e (Object.js:6)
Run Code Online (Sandbox Code Playgroud)

文件 Object.js 位于 src/Model/Objects/Object.js 下。

GitHub: https: //github.com/Tracer1337/DynaSys
部署在 Netlify 上:https://youthful-mestorf-9e0ba8.netlify.com/

我做错了什么?

javascript node.js reactjs webpack netlify

1
推荐指数
1
解决办法
3632
查看次数

我正在将 tailwindCSS 用于一个简单的 html 网站,但在 netlify 上部署不起作用,为什么?

我一直在按照官方视频教程学习如何使用 tailwind css,我只是想尝试将站点示例部署到 Netlify,看看它是否可以使用拖放功能工作。

这意味着获取整个项目文件夹并将其转储到 netlify 中。这通常适用于普通 html css js 网站,但由于某种原因我收到错误 Page Not Found Looks like you've followed a broken link or entered a URL that doesn't exist on this site.

该项目的结构如下:

项目结构

我究竟做错了什么?在 build 文件夹中还有另一个名为 tailwind.css 的文件

deployment web-deployment web netlify tailwind-css

1
推荐指数
1
解决办法
4458
查看次数

Gatsby Netlify 构建错误:无法解析“/opt/build/repo/src/templates”中的“../components/GridTemplate/GridTemplate.js”

在 Netlify 构建中调试一个看似无关的错误时,这突然发生。我本地没有这个问题。我已经清除了我的缓存,删除了我的包锁和节点模块文件夹并更新了所有内容,并在 Netlify 上运行了一个没有缓存的构建。我也检查了文件/文件夹名称是否区分大小写。会是什么呢?

在此处输入图片说明

组件使用的模板之一:

import React, { Component } from 'react'
import GridTemplate from '../components/GridTemplate/GridTemplate.js'
import { graphql } from 'gatsby'
...

class Mediums extends Component {    
  render() {
    let allTitles = []
    this.props.data.allMarkdownRemark.edges.forEach( post => {
      allTitles.push(post.node.frontmatter.title)
    })
    return (
      <div style={{position: "absolute", width: "100%", height: "100%", overflow: "hidden", overflowY: "scroll"}}>
        <HeaderMeta subTitle={this.props.pageContext.medium} itemGroup={this.props.data.allMarkdownRemark}/>
                 
        <GridTemplate 
          data={this.props.data.allMarkdownRemark.edges} 
          title={this.props.pageContext.medium}
          pastUrl={this.props.location.pathname}  
        />
        
      </div>
    )
  }
}

export default Mediums
Run Code Online (Sandbox Code Playgroud)

GridTemplate 组件:

import React, { Component } from 'react';
import S …
Run Code Online (Sandbox Code Playgroud)

reactjs gatsby netlify

1
推荐指数
1
解决办法
378
查看次数