【发布时间】:2020-05-27 02:24:10
【问题描述】:
我正在尝试将站点地图添加到我的 next.js 网站。我将以下代码添加到server.js
server.get('/sitemap.xml', (req, res) => {
const options = {
root:'./',
headers: {
'Content-Type': 'text/plain;charset=UTF-8',
}
};
return res.status(200).sendFile('sitemap.xml', options)
});
sitemap.xml 文件位于根文件夹,即与server.js 文件相同的位置。当我使用node server 在本地运行它并转到http://localhost:5000/sitemap.xml 时,它可以正常工作。当我将文件上传到服务器时,我从服务器收到 not found 错误。
我做错了什么,如何使用 nextjs 添加站点地图?
【问题讨论】:
-
嗨,杰西卡。您如何在服务器上运行您的节点应用程序?还有一件事,你检查过 sitemap.xml 的文件权限了吗?
-
有一点是,这是一条动态路径,而不是实际文件。因此,如果您只是部署静态内容,那么这将不起作用,您还需要在生产中拥有完整的 nextjs 服务器。有一件事,我认为 next.js 支持公共文件夹下的静态文件,因此如果您将站点地图移到那里,它可能只是作为静态文件工作。