brauche Webseite ideal für Vereine und Firmen
- Ad -
php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Webmaster > SEO - Suchmaschinen Tricks und Tipps
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 

 


SEO - Suchmaschinen Tricks und Tipps Alles zum Thema "Techniken zur Suchmaschinenoptimierung von Webseiten". Bitte keine Werbelinks

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 25-01-2009, 23:59
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard Rewritemaps

Hi,

ich bastel gerade an Rewritemaps damit ich "schönere" urls bauen kann.
leider funktioniert alles nicht gerade so wie ich mir das vorstelle.

wenn ich die webseite folgendermaßen aufrufe erscheint beim erstenmal eine weiße seite. jedes echo in der users.php wird igoriert.

http://www.example.de/profile-UzumakiNaruto

vhost config
Code:
RewriteLock ***/rewritelock.txt
<VirtualHost *:80>
        ServerName ***
        DocumentRoot ***
        RewriteEngine On
        RewriteMap users "prg:/usr/bin/php ***/users.php"
        ErrorLog  /var/log/apache2/error.***.log
        LogLevel warn
        CustomLog /var/log/apache2/access.***.log combined
</VirtualHost>
.htaccess im documentroot
Code:
RewriteRule ^profile-(.*)$ profile.php?id=${users:$1} [NC,L]
users.php
PHP-Code:
#!/usr/bin/php
<?php
mysql_connect
($db_host,$db_user,$db_pass);
mysql_select_db($db_name);

$filename    =    "log.txt";
if (!
$handle fopen("$filename""a+")) {
   echo 
"Cannot open file ($filename)";
   exit;
}

while( 
$url trim(fgets(STDIN))) {
   
$sql sprintf("SELECT user_id FROM ".DB_PREFIX."users WHERE user_name = '%s'"mysql_real_escape_string($username));
   
$result mysql_query($sql);
   
$row mysql_fetch_array($result);
   
$id $row['user_id'];
   
$today date("j-n-Y, G:i:s");
   if (
fwrite($handle$today."|".$url."|rn") === FALSE) {
      echo 
"Cannot write to file (".$filename.")";
      exit;
   }
   if(
fwrite(STDOUT$id.".html\r\n") === FALSE) {
      
fwrite($handle"CANT WRITE $urln");
   }
}
fclose($handle);
exit;
?>
danke für eurer hilfe schonmal im voraus
__________________
Gruß
Uzu
Mit Zitat antworten
  #2 (permalink)  
Alt 26-01-2009, 00:05
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist gerade online
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: Rewritemaps

Zitat:
[i]wenn ich die webseite folgendermaßen aufrufe erscheint beim erstenmal eine weiße seite.[/B]
Und die Logs sagen was dazu?
Zitat:
jedes echo in der users.php wird igoriert.
Na wo sollte die Ausgabe eines solchen echos denn auch landen ...?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 26-01-2009, 00:18
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard

ErrorLog /var/log/apache2/error.***.log sagt
File does not exist: asdf, referer: http://www.example.de/news

und das echo soll mir irgendwie eine ausgabe bringen .. sei es auf der weißen seite oder in den log dateien

die rewritelock.txt datei ist leer und die $filename = "log.txt"; wurde noch nicht erstellt.

ein normales rewritemap mit txt funktioniert .. aber ads ist gerade vorteilhaft wenn ich das mit txt machen würde
__________________
Gruß
Uzu
Mit Zitat antworten
  #4 (permalink)  
Alt 26-01-2009, 00:36
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist gerade online
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von UzumakiNaruto
ErrorLog /var/log/apache2/error.***.log sagt
File does not exist: asdf, referer: http://www.example.de/news
Und, sollte "asdf" denn existieren?
Zitat:
und das echo soll mir irgendwie eine ausgabe bringen .. sei es auf der weißen seite oder in den log dateien
Na ja, ich fuerchte, das RewriteMap-Script wird in einer Umgebung ausgefuehrt, wo kein "Platz" fuer solche Debug-Ausgaben ist.
Es hat auf STDOUT entweder einen Substitionswert fuer den umzuschreiben URL-Part zu liefern, oder NULL.

Wenn du von da aus Debugausgaben haben willst - dann wuerde ich vielleicht eher error_log() nehmen, und in ein definiertes Logfile schreiben lassen.
Zitat:
die rewritelock.txt datei ist leer
Bin mir nicht sicher, ob da irgendwelche Ausgaben drin zu erwarten waeren - das wird doch, soweit ich erkennen kann, nur fuer's Locking benutzt.
Zitat:
und die $filename = "log.txt"; wurde noch nicht erstellt.
Und wenn du das Script erst mal nicht als RewriteMap aufrufen laesst - sondern normal ueber den PHP-Kommandozeileninterpreter ausfuehren laesst?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #5 (permalink)  
Alt 26-01-2009, 00:56
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.778
unset befindet sich auf einem aufstrebenden Ast
Standard

OffTopic:
Welcome back! :-)
Mit Zitat antworten
  #6 (permalink)  
Alt 26-01-2009, 01:03
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard

Zitat:
Und, sollte "asdf" denn existieren?
nein .. habe auch alle php dateien mit grep -R 'asdf' * durchsucht .. nichts gefunden

Zitat:
Und wenn du das Script erst mal nicht als RewriteMap aufrufen laesst - sondern normal ueber den PHP-Kommandozeileninterpreter ausfuehren laesst?
Could not open input file: das bekomme ich dann
__________________
Gruß
Uzu
Mit Zitat antworten
  #7 (permalink)  
Alt 27-01-2009, 07:53
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von unset
OffTopic:
Welcome back! :-)
OffTopic:
danke


ich habe es hinbekommen aber leider nur einmal.
habe dann nochmal nachgelesen und apache führt das script auch nur einmal aus und muss dann in einer endlosschleife mitlaufen.

nur wenn ich das alles in eine endlosschleife packen will passiert gar nichts mehr

einmal lauffähig
PHP-Code:
set_time_limit(0); # forever program!
$users    fopen("php://stdin","r");
$username trim(fgets($users));
$result mysql_query(sprintf("SELECT user_id FROM ".DB_PREFIX."users WHERE user_name = '%s'"mysql_real_escape_string($username)));
$row mysql_fetch_assoc($result);
echo 
$row['user_id']; 
keinmal lauffähig
PHP-Code:
set_time_limit(0); # forever program!
while (1) {
   
$users    fopen("php://stdin","r");
   
$username trim(fgets($users));
   
$result mysql_query(sprintf("SELECT user_id FROM ".DB_PREFIX."users WHERE user_name = '%s'"mysql_real_escape_string($username)));
   
$row mysql_fetch_assoc($result);
   echo 
$row['user_id'];

der rewritelog sagt nicht mal "map ok" .. er bleibt genau eine zeile davor stehen und wartet .. und wartet .. und wartet

habt ihr noch ideen?

danke im voraus
__________________
Gruß
Uzu
Mit Zitat antworten
  #8 (permalink)  
Alt 27-01-2009, 12:52
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist gerade online
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Warum denn jetzt wieder eine einfache echo-Ausgabe? Ich bin mir nicht sicher, ob das mit einer Ausgabe auf STDOUT identisch ist.

Und dann steht in der mod_rewrite-Doku noch "A common mistake is to use buffered I/O on stdout."
Vielleicht muesste man die Ausgabe noch explizit flushen ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #9 (permalink)  
Alt 27-01-2009, 16:33
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard

http://de.php.net/manual/de/wrappers.php.php
Zitat:
php://output allows you to write to the output buffer mechanism in the same way as print() and echo().
hier die logs als zip .. habe unwichtige daten wie ip, zeit und pfad entfernt.

in der *_ok.log geht es gleich weiter .. auch wenn er sein ergebnis hat.
Code:
RewriteRule ^profile-(.*)$ profile.php?lookup=${users:$1} [NC,L]
__________________
Gruß
Uzu
Mit Zitat antworten
  #10 (permalink)  
Alt 27-01-2009, 16:34
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard

anhang:
Angehängte Dateien
Dateityp: zip rewritemap_log.zip (820 Bytes, 202x aufgerufen)
__________________
Gruß
Uzu
Mit Zitat antworten
  #11 (permalink)  
Alt 27-01-2009, 16:53
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist gerade online
Registriert seit: Sep 2001
Beiträge: 24.486
wahsaga befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von UzumakiNaruto
php://output allows you to write to the output buffer mechanism in the same way as print() and echo().
Schoen - aber ich bezweifle, ob php://output und php://stdout das gleiche sind.
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #12 (permalink)  
Alt 27-01-2009, 22:14
UzumakiNaruto
 Registrierter Benutzer
Links : Onlinestatus : UzumakiNaruto ist offline
Registriert seit: Nov 2004
Ort: Hannover
Beiträge: 584
UzumakiNaruto ist zur Zeit noch ein unbeschriebenes Blatt
UzumakiNaruto eine Nachricht über ICQ schicken UzumakiNaruto eine Nachricht über MSN schicken UzumakiNaruto eine Nachricht über Yahoo! schicken
Standard

Zitat:
Original geschrieben von wahsaga
Schoen - aber ich bezweifle, ob php://output und php://stdout das gleiche sind.
huch .. verdammt .. zu schnell gelesen.

aber das echo klappt wenn ich nur EINE id ausgeben lasse.
die endlosschleife will dagegen gar nicht arbeiten.

habe es vorhin auch mit $stdout = fopen('php://stdout", "w"); frwite($stdout, $userid); probiert .. ohne ergebnis
__________________
Gruß
Uzu
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

MariaDB 5.5 veröffentlicht
MariaDB 5.5 veröffentlichtDie freie MySQL-Alternative MariaDB wurde in der stabilen Version 5.5.23 veröffentlicht und soll einige Verbesserungen gegenüber Oracles Communityversion von MySQL mitbringen.

16.04.2012 | Berni

Deutsche Yii Framework Community
Deutsche Yii Framework CommunitySeit dem 19.03.2012 gibt es für die Yii PHP Framework Community ein deutsches Zuhause.

20.03.2012 | dhcomputer

 

Aktuelle PHP Scripte

EM 2012 Tipp-Spiel ansehen EM 2012 Tipp-Spiel

Online Tipp-Spiel zur Fussball Europameisterschaft 2012, basierend auf php-Script mit hinterlegter mySql-Datenbank

27.05.2012 tippimnetz | Kategorie: PHP/ Spiele
Advanced Login ansehen Advanced Login

Login-System und Kundenverwaltung, die sich spielend leicht in bestehende Webseiten einbauen lässt und einen enormen Funktionsumfang bietet. Ihre eigene Webseite muss mit Advanced Login nicht umständlich an ein fertiges System angepasst werden.

25.05.2012 Madden | Kategorie: PHP/ Kundenverwaltung
BROM CMS/BelCal 3 ansehen BROM CMS/BelCal 3

Spezielles CMS für Betreiber von Ferienwohnungen. Komplette Seitenerstellung online, Verwaltung mehrerer Objekte, Reservierungssystem mit sofortigem Abgleich im Belegungskalender und vieles mehr bietet dieses Content Management System.

25.05.2012 belcal2 | Kategorie: PHP/ CMS
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 13:28 Uhr.