<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tegget.de &#124; Die Blog-Gemeinschaft &#187; PHP</title>
	<atom:link href="http://www.tegget.de/kategorie/webmasterei/php-webmasterei/feed" rel="self" type="application/rss+xml" />
	<link>http://www.tegget.de</link>
	<description>Die Blog-Gemeinschaft</description>
	<lastBuildDate>Fri, 10 Feb 2012 13:51:02 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>HTTP-Statuscode im Internet Explorer</title>
		<link>http://www.tegget.de/1054_http-statuscode-im-internet-explorer.html</link>
		<comments>http://www.tegget.de/1054_http-statuscode-im-internet-explorer.html#comments</comments>
		<pubDate>Mon, 07 Dec 2009 06:11:22 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webmasterei]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Größe]]></category>
		<category><![CDATA[Header]]></category>
		<category><![CDATA[Internet Explorer]]></category>
		<category><![CDATA[Status]]></category>
		<category><![CDATA[Statuscode]]></category>

		<guid isPermaLink="false">http://www.tegget.de/?p=1054</guid>
		<description><![CDATA[Erfolgte eine Anfrage an einen Server, so schickt dieser einen Statuscode zurück. Im Normal- bzw. Idealfall den Code 200, was so viel heißt, wie &#8220;Seite gefunden, alles ok&#8221;. Dieses Rücksenden des Statuscodes sehen wir, als normale Internetnutzer nicht, außer, wenn wir auf eine Fehlerseite stoßen und somit z.B. den Statuscode 404 (Seite nicht gefunden) erhalten. [...]]]></description>
			<content:encoded><![CDATA[<p>Erfolgte eine Anfrage an einen Server, so schickt dieser einen Statuscode zurück. Im Normal- bzw. Idealfall den Code 200, was so viel heißt, wie &#8220;Seite gefunden, alles ok&#8221;. Dieses Rücksenden des Statuscodes sehen wir, als normale Internetnutzer nicht, außer, wenn wir auf eine Fehlerseite stoßen und somit z.B. den Statuscode 404 (Seite nicht gefunden) erhalten. Sämtliche Codes können <a href="http://de.wikipedia.org/wiki/HTTP-Statuscode">hier</a> nachgelesen werden.</p>
<p>Durch eine htaccess-Datei kann man seinem Server sagen, wie die Fehlerseite auszusehen hat, bzw. die Fehlermeldung zu lauten hat. In etwa so könnte ein Eintrag in der htaccess aussehen: <span id="more-1054"></span></p>
<blockquote><p>ErrorDocument 403 /403.html</p></blockquote>
<p>Definiert die Datei 403.html als Ausgabeseite bei Statuscode 403 (mangelnde Berechtigung zum Aufrufen der Seite)</p>
<blockquote><p>ErrorDocument 404 &#8220;&lt;html&gt;&lt;h1&gt;Fehler 404&lt;/h1&gt;&lt;p&gt;Die gewünschte Seite konnte nicht gefunden werden.&lt;/p&gt;&lt;/html&gt;&#8221;</p></blockquote>
<p>Verweist nicht auf eine extra angelegte Seite, sondern gibt den gewünschten Fehlercode direkt als HTML an.</p>
<p>Wie ich kürzlich feststellen durfte, ignoriert der Internet Explorer diese Fehlerausgaben, wenn sie eine bestimmte Bytezahl unterschreiten. Wie genau das die anderen Browser handhaben, weiß ich noch nicht &#8211; bin für Tipps dankbar.<br />
Konkret erwartet der Internet Explorer folgende Größen für Fehlerausgaben:</p>
<blockquote><p>Code 400 &#8220;Bad Request&#8221; mind. <strong>512 bytes</strong><br />
Code 403 &#8220;Forbidden&#8221; mind. <strong>256 bytes </strong><br />
Code 404 &#8220;Not Found&#8221; mind. <strong>512 bytes </strong><br />
Code 405 &#8220;Method Not Allowed&#8221; mind. <strong>256 bytes </strong><br />
Code 406 &#8220;Not Acceptable&#8221; mind. <strong>512 bytes </strong><br />
Code 408 &#8220;Request Time-out&#8221; mind. <strong>512 bytes </strong><br />
Code 409 &#8220;Conflict&#8221; mind. <strong>512 bytes </strong><br />
Code 410 &#8220;Gone&#8221; mind. <strong>256 bytes </strong><br />
Code 500 &#8220;Internal Server Error&#8221; mind. <strong>512 bytes </strong><br />
Code 501 &#8220;Not Implemented&#8221; mind. <strong>512 bytes </strong><br />
Code 505 &#8220;HTTP Version Not Supported&#8221; mind. <strong>512 bytes</strong></p></blockquote>
<p>(<a href="http://support.microsoft.com/kb/q218155/">siehe auch</a>)</p>
<p>Umgehen kann man das Problem auf dem eigenen Rechner, wenn man in den IE-Einstellungen das Feld &#8220;Kurze HTTP-Fehlermeldungen anzeigen&#8221; aktiviert.</p>
<p>Folgende <a href="http://www.mathe24.net/http-status-code.html">Seite empfehle ich zum Abfragen des HTTP-Statuscodes</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tegget.de/1054_http-statuscode-im-internet-explorer.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>API: Google Suchvorschläge abfragen</title>
		<link>http://www.tegget.de/961_api-google-suchvorschlage-abfragen.html</link>
		<comments>http://www.tegget.de/961_api-google-suchvorschlage-abfragen.html#comments</comments>
		<pubDate>Sat, 19 Sep 2009 05:15:39 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webmasterei]]></category>
		<category><![CDATA[Api]]></category>
		<category><![CDATA[Ergänzungen]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[Liste]]></category>
		<category><![CDATA[Suchausdruck]]></category>
		<category><![CDATA[Vorschlag]]></category>

		<guid isPermaLink="false">http://www.tegget.de/?p=961</guid>
		<description><![CDATA[Gibt man bei Google Buchstaben oder Anfänge von Wörtern ein, so schlägt Google automatisch Suchausdrücke vor, die zu der getätigten Suche passen könnten. Diese vorgeschlagenen Suchausdrücke, inklusive Anzahl der Treffer, kann man via API ganz einfach auslesen. 
http://google.com/complete/search?output=toolbar&#38;q=Webmaster
Gibt man also bei Google &#8220;Webmaster&#8221; ein, vervollständig die Suchmaschine dies folgendermaßen:
webmaster tools (51200000)
webmaster 4you (174000)
webmaster tools google (22100000)
webmasterplan [...]]]></description>
			<content:encoded><![CDATA[<p>Gibt man bei Google Buchstaben oder Anfänge von Wörtern ein, so schlägt Google automatisch Suchausdrücke vor, die zu der getätigten Suche passen könnten. Diese vorgeschlagenen Suchausdrücke, inklusive Anzahl der Treffer, kann man via API ganz einfach auslesen. <span id="more-961"></span></p>
<p><a href="http://google.com/complete/search?output=toolbar&amp;q=Webmaster">http://google.com/complete/search?output=toolbar&amp;q=Webmaster</a></p>
<p>Gibt man also bei Google &#8220;Webmaster&#8221; ein, vervollständig die Suchmaschine dies folgendermaßen:</p>
<blockquote><p>webmaster tools (51200000)<br />
webmaster 4you (174000)<br />
webmaster tools google (22100000)<br />
webmasterplan (507000)<br />
webmaster tool (70600000)<br />
webmaster forum (33000000)<br />
webmaster google (51100000)<br />
webmasterpro (2440000)<br />
webmasters (71700000)<br />
webmasterpark (22400)</p></blockquote>
<p>Vielleicht ist der oben genannte Link ja für den ein oder andere Webmaster interessant <img src='http://www.tegget.de/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://www.tegget.de/961_api-google-suchvorschlage-abfragen.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Wordpress: Feed deaktivieren ohne Plugin</title>
		<link>http://www.tegget.de/887_wordpress-feed-deaktivieren-ohne-plugin.html</link>
		<comments>http://www.tegget.de/887_wordpress-feed-deaktivieren-ohne-plugin.html#comments</comments>
		<pubDate>Fri, 04 Sep 2009 04:35:56 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[atom]]></category>
		<category><![CDATA[deaktivieren]]></category>
		<category><![CDATA[entfernen]]></category>
		<category><![CDATA[Feed]]></category>
		<category><![CDATA[functions.php]]></category>
		<category><![CDATA[Kommentare]]></category>
		<category><![CDATA[plugin]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[rss2]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.tegget.de/?p=887</guid>
		<description><![CDATA[Möchte man &#8211; aus welchen Gründen auch immer &#8211; bei einem Wordpress-Blog die Feeds deaktivieren, so lässt sich das ohne Plugin realisieren. Es müssen lediglich ein paar Codezeilen in die functions.php des Themes eingefügt werden. Ist keine functions.php vorhanden, so kann man selbst eine im Theme-Verzeichnis erstellen.
Deaktivieren der allgemeinen Feedfunktion in Wordpress
Zum Deaktivieren des Feeds [...]]]></description>
			<content:encoded><![CDATA[<p>Möchte man &#8211; aus welchen Gründen auch immer &#8211; bei einem Wordpress-Blog die Feeds deaktivieren, so lässt sich das ohne Plugin realisieren. Es müssen lediglich ein paar Codezeilen in die functions.php des Themes eingefügt werden. Ist keine functions.php vorhanden, so kann man selbst eine im Theme-Verzeichnis erstellen.<span id="more-887"></span></p>
<h2>Deaktivieren der allgemeinen Feedfunktion in Wordpress</h2>
<p>Zum Deaktivieren des Feeds in Wordpres die folgenden Zeilen in die functions.php eintragen:</p>
<blockquote><p>function fb_disable_feed() {<br />
wp_die( __(&#8217;Kein Feed erreichbar, besuchen Sie doch bitte die Startseite!&#8217;) );<br />
}</p>
<p>add_action(&#8217;do_feed&#8217;, &#8216;fb_disable_feed&#8217;, 1);<br />
add_action(&#8217;do_feed_rdf&#8217;, &#8216;fb_disable_feed&#8217;, 1);<br />
add_action(&#8217;do_feed_rss&#8217;, &#8216;fb_disable_feed&#8217;, 1);<br />
add_action(&#8217;do_feed_rss2&#8242;, &#8216;fb_disable_feed&#8217;, 1);<br />
add_action(&#8217;do_feed_atom&#8217;, &#8216;fb_disable_feed&#8217;, 1);</p></blockquote>
<p><em>(Code gefunden bei </em><a href="http://bueltge.de/wordpress-feeds-deaktivieren/794/"><em>bueltge.de</em></a>)</p>
<h2>Deaktivieren der Feedfunktion für Kommentare</h2>
<p>Den folgenden Code ebenfalls in die functions.php des Wordpress-Themes einfügen:</p>
<blockquote><p>function remove_comments_rss( $for_comments ) {<br />
return;<br />
}<br />
add_filter(&#8217;post_comments_feed_link&#8217;,'remove_comments_rss&#8217;);</p></blockquote>
<p><em>(Code gefunden bei </em><a href="http://www.wptoolbox.de/allgemein/2009/08/kommentar-feed-deaktivieren"><em>wptoolbox.de</em></a>)</p>
<p>Die Codes entfernen sowohl den &#8220;normalen RSS-Feed, den RSS2-Feed und auch den Atom-Feed. Beide Script sind bei einer Kundenseite im Einsatz und funktionieren problemlos.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.tegget.de/887_wordpress-feed-deaktivieren-ohne-plugin.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Passwort-Verschlüsselung via ISPEM</title>
		<link>http://www.tegget.de/745_passwort-verschlusselung-via-ispem.html</link>
		<comments>http://www.tegget.de/745_passwort-verschlusselung-via-ispem.html#comments</comments>
		<pubDate>Sat, 11 Jul 2009 07:43:25 +0000</pubDate>
		<dc:creator>Tom</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Webmasterei]]></category>
		<category><![CDATA[ISPEM]]></category>
		<category><![CDATA[MD5]]></category>
		<category><![CDATA[Passwort]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[Verschlüsselung]]></category>

		<guid isPermaLink="false">http://www.tegget.de/?p=745</guid>
		<description><![CDATA[Beim Websider stieß ich gestern auf einen kurzen, aber interessanten Codeschnippsel zur sicheren Passwort-Verschlüsselung: &#8220;Individual Secure Password Encryption Method, das ist ISPEM. Dahinter steckt nicht viel Innovatives, aber Nützliches.&#8221;
Die ISPEM-Verschlüsselung konkret:
define('ISPEM_FCONST_SPL','your_unknown_value1',true);
define('ISPEM_SCONST_SPL','your_unknown_value2',true);
 
function ISPEM_encrypt($clear_password){
   $p = str_rot13($clear_password);
   $p = base64_encode($p);
   $S1 = md5(ISPEM_FCONST_SPL,true);
   $S2 = md5(ISPEM_SCONST_SPL,false);
   $SC [...]]]></description>
			<content:encoded><![CDATA[<p>Beim <a href="http://derwebsider.de/2009/07/passwort-verschlusselung-ispem/">Websider</a> stieß ich gestern auf einen kurzen, aber interessanten Codeschnippsel zur sicheren Passwort-Verschlüsselung: &#8220;<em>Individual Secure Password Encryption Method</em>, das ist <strong>ISPEM</strong>. Dahinter steckt nicht viel Innovatives, aber Nützliches.&#8221;</p>
<p>Die ISPEM-Verschlüsselung konkret:</p>
<pre class="php" style="padding-left: 30px; font-family: monospace;"><span style="color: #990000;">define</span><span style="color: #009900;">(</span><span style="color: #0000ff;">'ISPEM_FCONST_SPL'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'your_unknown_value1'</span><span style="color: #339933;">,</span><span style="color: #000000; font-weight: bold;">true</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
<span style="color: #990000;">define</span><span style="color: #009900;">(</span><span style="color: #0000ff;">'ISPEM_SCONST_SPL'</span><span style="color: #339933;">,</span><span style="color: #0000ff;">'your_unknown_value2'</span><span style="color: #339933;">,</span><span style="color: #000000; font-weight: bold;">true</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
 
<span style="color: #000000; font-weight: bold;">function</span> ISPEM_encrypt<span style="color: #009900;">(</span><span style="color: #000088;">$clear_password</span><span style="color: #009900;">)</span><span style="color: #009900;">{</span>
   <span style="color: #000088;">$p</span> <span style="color: #339933;">=</span> <span style="color: #990000;">str_rot13</span><span style="color: #009900;">(</span><span style="color: #000088;">$clear_password</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$p</span> <span style="color: #339933;">=</span> <span style="color: #990000;">base64_encode</span><span style="color: #009900;">(</span><span style="color: #000088;">$p</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$S1</span> <span style="color: #339933;">=</span> <span style="color: #990000;">md5</span><span style="color: #009900;">(</span>ISPEM_FCONST_SPL<span style="color: #339933;">,</span><span style="color: #000000; font-weight: bold;">true</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$S2</span> <span style="color: #339933;">=</span> <span style="color: #990000;">md5</span><span style="color: #009900;">(</span>ISPEM_SCONST_SPL<span style="color: #339933;">,</span><span style="color: #000000; font-weight: bold;">false</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$SC</span> <span style="color: #339933;">=</span> <span style="color: #990000;">md5</span><span style="color: #009900;">(</span><span style="color: #990000;">strlen</span><span style="color: #009900;">(</span><span style="color: #000088;">$p</span><span style="color: #009900;">)</span><span style="color: #339933;">.</span><span style="color: #000088;">$S1</span><span style="color: #339933;">,</span><span style="color: #000000; font-weight: bold;">false</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
   <span style="color: #000088;">$p</span> <span style="color: #339933;">=</span>  <span style="color: #990000;">substr</span><span style="color: #009900;">(</span><span style="color: #009900;">(</span><span style="color: #000088;">$S2</span><span style="color: #339933;">.</span><span style="color: #000088;">$SC</span><span style="color: #009900;">)</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">0</span><span style="color: #339933;">,</span><span style="color: #cc66cc;">45</span><span style="color: #009900;">)</span><span style="color: #339933;">;</span>
   <span style="color: #b1b100;">return</span> <span style="color: #000088;">$p</span><span style="color: #339933;">;</span>  <span style="font-style: italic; color: #666666;">//liefert einen 45 zeichenlangen Encrypted String, unknackbar</span>
<span style="color: #009900;">}</span></pre>
<p><span id="more-745"></span>Dadurch, dass der String abgeschnitten ist, ist es laut Aussage des Entwicklers prinzipiell unmöglich, dass wahre Passwort rauszufinden. Eine interessante <del>Alternative</del> Optimierung der MD5-Verschlüsselung.</p>
<p><strong>Link:</strong> <a href="http://derwebsider.de/2009/07/passwort-verschlusselung-ispem/">Passwort-Verschlüsselung ISPEM</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.tegget.de/745_passwort-verschlusselung-via-ispem.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

