Sitemap – SELFHTML-Forum Forum als Ergänzung zum SELFHTML-Wiki und zur Dokumentation SELFHTML https://forum.selfhtml.org/self Sitemap Sat, 23 Mar 19 08:19:50 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745132#m1745132 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745132#m1745132 <p>Guten Morgen, ich möchte eine vernunftige sitemap für meine Seite machen, damit alle Seiten aufgelistet sind. Kann jemanden mir ein Tipp geben wo ich das machen kann am besten?</p> <p>Vielen Dank, Jeannie</p> Sitemap Sat, 23 Mar 19 08:47:36 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745135#m1745135 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745135#m1745135 <p>Hallo jeannie61,</p> <p>z. B. <a href="https://www.marcobeierer.de/tools/sitemap-generator" rel="nofollow noopener noreferrer">https://www.marcobeierer.de/tools/sitemap-generator</a></p> <p>Bis demnächst<br> Matthias</p> <div class="signature">-- <br> Pantoffeltierchen haben keine Hobbys.<br> ¯\_(ツ)_/¯ </div> Sitemap Sat, 23 Mar 19 10:16:28 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745144#m1745144 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745144#m1745144 <p>Verwendest Du ein CMS oder ähnliches? Dann ist der eigentlich beste Weg ist das Erzeugen der Sitemap aus den Daten selbst.</p> <p>Eien weitere Alternative:</p> <p>Ich erzeuge direkt auf dem Server (in einer ssh-Sitzung) mit den wunderbaren Tools <code>wget</code>, <code>sed</code>, <code>sort</code> und <code>grep</code> eine sitemap.txt. Das Skript funktioniert auch als Kindprozess in PHP. Allerdings sollte man dann - bei großen Webseiten und/oder einer waittime zwischen Abrufen einem trickreich dafür sorgen, dass entweder die Verbindung zum Client (Browser) nicht abbricht oder der Prozess im Hintergrund gestartet wird.</p> <p><strong>Pass aber auf:</strong> Wenn mod_evasive benutzt wird sollte entweder waitTime auf einen niedrigen ganzzahligen (Sekunden-)Wert != 0 gesetzt werden (z.B. 1) oder eben dieses mod_evasive sollte <a href="https://code.fastix.org/showFile.php?file=Projekte/Apache%2Cmod_evasive%2Ciptables%3AHelfer-Skripte%20zum%20%28zeitweisen%29%20Blockieren%20von%20IP-Adressen/evasive.conf.example" rel="nofollow noopener noreferrer">aus seiner Konfiguration</a> wissen, dass für die eigenen also (127.0.0.1, IP($host)) Ausnahmen gelten (Mir ist es im ersten Anlauf gelungen, mich selbst eine Weile auszusperren).</p> <p>In der Zeile mit den vielen "grep -v" entferne ich Funde, die ich nicht in der sitemap.txt haben will. Da habe ich leider noch etwas im Programmblock stehen, was eigentlich in dessen Settingsblock stehen soll.</p> <pre><code class="block language-sh"><span class="token shebang important">#!/bin/bash</span> <span class="token comment">## Settings:</span> <span class="token builtin class-name">export</span> <span class="token assign-left variable"><span class="token environment constant">LANG</span></span><span class="token operator">=</span><span class="token string">"de_DE.utf8"</span><span class="token punctuation">;</span> <span class="token assign-left variable">host</span><span class="token operator">=</span><span class="token string">"www.example.com"</span><span class="token punctuation">;</span> <span class="token assign-left variable">protokoll</span><span class="token operator">=</span><span class="token string">"https"</span><span class="token punctuation">;</span> <span class="token assign-left variable">sitmapFile</span><span class="token operator">=</span><span class="token string">"/var/www/<span class="token variable">${host}</span>/sitemap.txt"</span><span class="token punctuation">;</span> <span class="token assign-left variable">waitTime</span><span class="token operator">=</span><span class="token number">0</span><span class="token punctuation">;</span> <span class="token comment">## Run!</span> <span class="token assign-left variable">oldPwd</span><span class="token operator">=</span><span class="token variable"><span class="token variable">$(</span><span class="token builtin class-name">pwd</span><span class="token variable">)</span></span><span class="token punctuation">;</span> <span class="token assign-left variable">tmpFile</span><span class="token operator">=</span><span class="token variable"><span class="token variable">$(</span>mktemp<span class="token variable">)</span></span><span class="token punctuation">;</span> <span class="token assign-left variable">tmpDir</span><span class="token operator">=</span><span class="token variable"><span class="token variable">$(</span>mktemp <span class="token parameter variable">-d</span><span class="token variable">)</span></span><span class="token punctuation">;</span> <span class="token builtin class-name">cd</span> <span class="token variable">${tmpDir}</span><span class="token punctuation">;</span> <span class="token function">wget</span> <span class="token parameter variable">-w</span> <span class="token variable">${waitTime}</span> <span class="token parameter variable">-mr</span> <span class="token variable">${protokoll}</span>://<span class="token variable">${host}</span> <span class="token operator"><span class="token file-descriptor important">2</span>></span><span class="token file-descriptor important">&1</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token parameter variable">-P</span> <span class="token string">"^--\d\d\d\d-\d\d-\d\d \d\d:\d\d:\d\d-- "</span> <span class="token operator">|</span> <span class="token function">sed</span> <span class="token string">"s/^.* //"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token parameter variable">-v</span> <span class="token string">"C=S"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token parameter variable">-v</span> <span class="token string">"C=M"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token parameter variable">-v</span> <span class="token string">"C=N"</span> <span class="token operator">|</span> <span class="token function">grep</span> <span class="token parameter variable">-v</span> <span class="token string">"download=1"</span><span class="token operator">|</span> <span class="token function">grep</span> <span class="token parameter variable">-v</span> <span class="token string">"opensearch.xml"</span> <span class="token operator">></span> <span class="token variable">${tmpFile}</span> <span class="token builtin class-name">cd</span> <span class="token variable">${oldPwd}</span><span class="token punctuation">;</span> <span class="token assign-left variable">tmpFileSorted</span><span class="token operator">=</span><span class="token variable"><span class="token variable">$(</span>tempfile<span class="token variable">)</span></span><span class="token punctuation">;</span> <span class="token function">sort</span> <span class="token parameter variable">-u</span> <span class="token operator"><</span> <span class="token variable">${tmpFile}</span> <span class="token operator">>></span> <span class="token variable">${tmpFileSorted}</span><span class="token punctuation">;</span> <span class="token function">cat</span> <span class="token operator"><</span> <span class="token variable">${tmpFileSorted}</span> <span class="token operator">></span> <span class="token variable">${sitmapFile}</span><span class="token punctuation">;</span> <span class="token comment">#clear:</span> <span class="token function">rm</span> <span class="token parameter variable">-rf</span> <span class="token variable">${tmpDir}</span> <span class="token operator"><span class="token file-descriptor important">2</span>></span> /dev/null<span class="token punctuation">;</span> <span class="token function">rm</span> <span class="token parameter variable">-f</span> /tmp/sitemap.* <span class="token operator"><span class="token file-descriptor important">2</span>></span> /dev/null<span class="token punctuation">;</span> <span class="token function">rm</span> <span class="token variable">${tmpFile}</span> <span class="token operator"><span class="token file-descriptor important">2</span>></span> /dev/null<span class="token punctuation">;</span> <span class="token function">rm</span> <span class="token variable">${tmpFileSorted}</span> <span class="token operator"><span class="token file-descriptor important">2</span>></span> /dev/null<span class="token punctuation">;</span> </code></pre> Sitemap Sat, 23 Mar 19 13:45:44 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745160#m1745160 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745160#m1745160 <p><a href="https://www.sitemaps.org/index.html" rel="nofollow noopener noreferrer">hier</a> ist beschrieben wie die Datei auszusehen hat. MFG</p> Sitemap Sat, 23 Mar 19 08:51:07 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745136#m1745136 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745136#m1745136 <p>Vielen Dank Ich werde es ausprobieren. Jeannie</p> Sitemap Sat, 23 Mar 19 17:02:24 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745162#m1745162 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745162#m1745162 <blockquote> <p><a href="https://www.sitemaps.org/index.html" rel="nofollow noopener noreferrer">hier</a> ist beschrieben wie die Datei auszusehen hat. MFG</p> </blockquote> <p><strong>Das ist unvollständig.</strong></p> <p><a href="https://www.sitemaps.org/protocol.html#otherformats" rel="nofollow noopener noreferrer">Hier die Übersicht (ebenfalls von sitemap.org!), in der auch steht, dass einfache Textdateien ebenso möglich sind</a>.</p> Sitemap Sat, 23 Mar 19 17:52:55 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745166#m1745166 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745166#m1745166 <p>Ich benutze nur ein Web Editor. Ich schreibe alles selber, bin aber keine experte, leider.</p> <p>Vielen Dank, Jeannie</p> Sitemap Sat, 23 Mar 19 17:59:13 Z https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745167#m1745167 https://forum.selfhtml.org/self/2019/mar/23/sitemap/1745167#m1745167 <blockquote> <p>Ich benutze nur ein Web Editor. Ich schreibe alles selber, bin aber keine experte, leider.</p> </blockquote> <p>Die XML Datei ist so dermaßen einfach da muß man kein Experte sein. MFG</p>