Page 1 of 1

Disallow: /download.php* in robots.txt

Posted: Wed 12. May 2010, 15:09
by hekla
Kann mir jemand sagen, warum in robots.txt "Disallow: /download.php*" steht.

Das heisst doch, dass die Dokumente in Dateiliste *nicht* indiziert werden.
Soweit ich weiss ist das Indizieren lassen von PDFs aber (im Normalfall) sinnvoll ...

Kann mich jemand aufklären.

Liebe Grüsse und Dank,
Michael

Re: Disallow: /download.php* in robots.txt

Posted: Wed 12. May 2010, 15:52
by update
Wieso sollte es sinnvoll sein, sowas wie
http://meinesupertolledomain.de/downloa ... d0e6650d6c
im Suchmaschinenindex zu haben?
Oder im Falle von
http://meinesupertolledomain.de/download.php
ein 404 not found?

Re: Disallow: /download.php* in robots.txt

Posted: Wed 12. May 2010, 17:36
by juergen
Hinzukommt, dass eine download.php ohne Paramter vollkommen nutzlos wäre. Jawoll :mrgreen:

Re: Disallow: /download.php* in robots.txt

Posted: Thu 13. May 2010, 14:19
by hekla
claus wrote:Wieso sollte es sinnvoll sein, sowas wie
http://meinesupertolledomain.de/downloa ... d0e6650d6c
im Suchmaschinenindex zu haben?
Weil ich den Inhalt meiner PDFs gerne von den SE indiziert hätte ...
Oder begreife ich das was nicht...?

bei
claus wrote:http://meinesupertolledomain.de/download.php
ein 404 not found?
ist klar: will ich nicht und wird von den SE so oder so nicht genommen.

Gruss
Michael

Re: Disallow: /download.php* in robots.txt

Posted: Fri 14. May 2010, 07:40
by flip-flop
Hallo,

wie Oliver es macht ist es verkehrt. Die einen möchten ein geschütztes /filearchive/*, die anderen möchten es öffnen.
OG hat sich für die erste Variante entschieden.

Jedoch ist es problemlos möglich hier einen direkten "Download" ohne diese Funktion zu generieren.
Ein kleines CP-trigger Script in "frontend_init" und das abschalten der "filearchive/.htaccess" hilft.
Jetzt ist natürlich der geschütze Bereich aufgehoben.

Das könnte ausgebaut werden um über z.B. den target-Tag in der Beschreibung zu selektieren.


Hier die Supereinfachvariante.

Dateiname: template/inc_script/frontend_init/cp_trig_filelist_kill_download.php

Code: Select all

<?php
/**
 * ******************************************************************************
 * 14.05.10 KH: CP Filelist: Kill download in link
 * Aendert den Link zum Download: tauscht "download.php?f=" nach "filearchive/"
 * Im Template zur Identifizierung: <!--XDOWNLOAD_LINK//-->
 * Im CP:                    Download: [_] direkt
 * in conf.inc.php:          $phpwcms['allow_ext_init'] = 1;
 * Verzeichnis filearchive/: Umbenennen .htaccess  nach _htaccess
 ******************************************************************************
*/
// -------------------------------------------------------------------------------------------
// obligate check for phpwcms constants
	if (!defined('PHPWCMS_ROOT')) {
		die("You Cannot Access This Script Directly, Have a Nice Day."); }
// -------------------------------------------------------------------------------------------



function FILELIST_KILL_DOWNLOAD_1($text, & $data) {

// ======= CUSTOM vars ========================================================

$cp_identification 	= '<!--XDOWNLOAD_LINK//-->';  // cp identifier

// ============================================================================

	// Der richtige CP: =>  filelist (7) und Tag vorhanden?
	if( $data['acontent_type'] == 7 AND strpos($text, $cp_identification) ) 
	{ 
		// Ergebnis in Container einsetzen
		$text = str_replace('download.php?f=','filearchive/',$text);
		
	}

	return $text;
	}

	register_cp_trigger('FILELIST_KILL_DOWNLOAD_1');
?>
Vorlage: Mit Identifizierer <!--XDOWNLOAD_LINK//--> irgendwo im Template.

Code: Select all

<!--FILE_SETTINGS_END//-->
<!--XDOWNLOAD_LINK//-->
[TITLE]<h3>{TITLE}</h3>[/TITLE]
..
..
..
<a href="{FILE_LINK}.{FILE_EXT}"{FILE_TARGET}>[FILE_TITLE]{FILE_TITLE}[/FILE_TITLE][FILE_TITLE_ELSE]{FILE_NAME}[/FILE_TITLE_ELSE]</a>
Es wird im Prinzip nur ein Teil des generierten Links ersetzt.
Aus

Code: Select all

Vorlage: <a href="{FILE_LINK}&target=0"{FILE_TARGET}>

Ergebnis: <a href="download.php?f=30b775233abb220a4bedda7030c8b533&target=0" target="_blank">Title-PDF</a>
wird

Code: Select all

Vorlage: <a href="{FILE_LINK}.{FILE_EXT}"{FILE_TARGET}>

Ergebnis: <a href="filearchive/30b775233abb220a4bedda7030c8b533.pdf" target="_blank">Title-PDF</a>
Eine andere Lösung wäre die Erweiterung des CP um einen Schalter, der dies generiert. Bitte an OG wenden. (Issue schreiben).

Oder die betreffenden Dateien vom Script automatisch in ein separates Verzeichnis kopieren lassen, dann vorzugsweise mit dem tatsächlichen Namen.

Code: Select all

<a href="content/doc/super-wichtiges.pdf" target="_blank">Title-PDF</a>
So könnte auch der Schutz von /filearchive/ bestehen bleiben.

Es ist alles machbar ....

Knut

Re: Disallow: /download.php* in robots.txt

Posted: Fri 14. May 2010, 12:03
by update
Um das Pdf in einem Tab / Fenster sich öffnen zu lassen, muss in der conf.inc.php stehen:
$phpwcms['inline_download'] = 1;
und im Contentpart Dateiliste darf Download direkt nicht gecheckt sein
Dann sollte auch eine Suchmaschine sicher das pdf lesen und indexieren können (über den Link dahin).
$phpwcms['inline_download'] = 0; bietet die Datei zum Download an.

Ist nur eine Vermutung, sollte aber so stimmen, denn ein und dasselbe pdf, angeboten auf diese zwei Arten auf zwei verschiedenen Websites zeigt im index der Suchmaschine nur das mit der 1. Methode angebotene pdf ... und das wiederholt sich bei ca 15 weiteren genau so....
Disallow download.php* auszukommentieren soll dabei auch helfen.... oder?

Oder ich liege da total falsch :)

Re: Disallow: /download.php* in robots.txt

Posted: Fri 14. May 2010, 12:23
by flip-flop
Wenn die SUMAS den Link mit "download.php?" angehen ist das natürlich die bessere Wahl.

Knut

Re: Disallow: /download.php* in robots.txt

Posted: Sat 15. May 2010, 06:29
by Oliver Georgi
Ich habe mich einfach default dafür entschieden, es möglichst erst mal soweit sinnvoll abzusichern - sehe nicht, was hier falsch sein sollte. Ihr kennt doch das Problem: ist etwas erst mal im Netz, ist es erst mal nicht mehr rauszubekommen. Und die meisten User sollten sich dann einen Kopf machen müssen, wenn Sie es wirklich brauchen anstatt in Facebook-Manier darauf zu setzen, dass erst mal alles erlaubt ist, was nicht explizit verboten ist.

Re: Disallow: /download.php* in robots.txt

Posted: Sat 15. May 2010, 08:48
by flip-flop
Das sehe ich genau so.

Alternative Mittel und Wege sind ja vorhanden wenn Dokumente unbedingt im Suchindex stehen müssen.


Interessant wäre nur zu wissen, ob die SUMAs auch dem Link "example.com/download.php?xyz" folgen, wenn die "download.php" nicht in der robots.txt ausgeschlossen ist.


Knut

Re: Disallow: /download.php* in robots.txt

Posted: Sat 15. May 2010, 10:57
by hekla
Danke für die ausführlichen Antworten und Alternativen.

Ich sehe es auch so, dass ich erstmal zurückhaltend mit den Daten im Netz bin.
Trotzdem hat es mich interessiert, wie es mit download.php* aussieht.

Wunderbar wäre beim CP Filelist eine Checkbox in der Art von:
"indexed by SE" --> file.php* und "Allow: /file.php*"
"not indexed by SE" --> download.php* und "Disallow: /download.php*"

Liebe Grüsse
Michael

Re: Disallow: /download.php* in robots.txt

Posted: Sat 15. May 2010, 11:07
by Oliver Georgi
Die Downloads unter download.php?xyz werden korrekt indiziert, solange der Download nicht per Redirect erfolgt und dann wiederum die .htaccess in Filearchive greift, insofern diese dort noch vorhanden ist.