bonjour je suis dans l'optimisation j'ai trouvé un tutoriel non vidéo mais apparemment il oublie une étape ou deux sitemap code courant public / sitemap.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 
import express from 'express'
import { SitemapStream, streamToPromise } from 'sitemap'
import mongoose from 'mongoose'
import { domain } from '../src/env'
const port = `${domain}`
const app = express()
let sitemap;
app.get('/sitemap.xml', async function(req, res) {
    res.header('Content-Type', 'application/xml');
    res.header('Content-Encoding', 'gzip');
    if (sitemap) {
        res.send(sitemap)
        return
    }
    try {
        const allCategories = await Category.Category.find().select('title')
        const categories = queryCategories.map( ({ title }) => `/category/${title}`)
        const smStream = new SitemapStream({ hostname: 'https://yourWebsite.com/' })
        const pipeline = smStream.pipe(createGzip())
        categories.forEach(function(item) {
            smStream.write({ url: item, changefreq: 'monthly', priority: 0.6})
        });
        streamToPromise(pipeline).then(sm => sitemap = sm)
        smStream.end()
        pipeline.pipe(res).on('error', (e) => {throw e}
        console.error(e)
        res.status(500).end()
    }
});
pour les pages d'erreur j'ai créé une page page introuvable mais ce n'est pas une page avec un statut 400 en plus la page supprime toutes les pages qui ont '/ mot' voici le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
 return (
    <BrowserRouter>
      <NavBar/>
      <Switch>
        <Route exact path="/" component={HomePage}/>
        <Route exact path="/product/:id" component={ProductDetails}/>
        <Route exact path="/category/:id" component={CategoryProduct}/>
        <Route exact path="*" component={Pagenotfound}/>
        {
          profile !==null ? (
            <>
              <Route exact path="/profile" component={ProfilePage}/>
              <Route exact path="/cart" component={Cart}/>
              <Route exact path="/oldorders" component={Oldorders}/>
              <Route exact path="/order" component={Order}/>
              <Route exact path="/orderdetail/:id" component={OrderDetails}/>
            </>
          ):
          (
            <>
             <Route exact path="/login" component={LoginPage}/>
             <Route exact path="/register" component={RegisterPage}/>
            </>
          )
      }
 
 
      <Route exact component={HomePage}/>
   </Switch>
   </BrowserRouter>
 );
}
 
export default App;
dernière chose quand je fais le build je perds tous merci de votre aide