Seite 2 von 2

Verfasst: 25.07.2006 22:28
von BZebra
Hi Tekin,

erst mal Danke für Antwort!

Die Fehlermeldung (Warning: ob_start(): output handler 'ob_gzhandler' cannot be used after 'URL-Rewriter' in /www/htdocs/.../includes/page_header.php on line 45) kommt durch den Einbau des Image Verification Hack. Ich hab ihn deshalb schon mehrmals ein- und wieder ausgebaut und den Fehler leider nicht gefunden. :-?

Der Hack ist eigentlich ein ganz kurzer, deswegen poste und verlinke ich mal alles:

Code: Alles auswählen

############################################################## 
## MOD Title: phpBB Image verification
## MOD Author: Kailash Nadh, http://kailashnadh.name
## MOD Description: Adds an image verification system on the post (new/edit/pm..) 
## pages for un registered users, thus preventing automated posts by bots
## 
## Requires GD to function
##
## MOD Version: 1.0
## 
## Installation Level: (Intermediate) 
## Installation Time: 5 Minutes 
## Files To Edit: posting.php,post_body.tpl
## Included Files: img_verify.php 
##
## Note : Upload img_verify.php to the phpBB installation directory
##
############################################################## 
## Before Adding This MOD To Your Forum, You Should Back Up All Files Related To This MOD 
##############################################################



#
#-----[ OPEN ]------------------------------------------
#
posting.php

#
#-----[ FIND ]------------------------------------------
#
	redirect(append_sid("login.$phpEx?redirect=posting.$phpEx&" . $redirect, true));
}

#
#-----[ AFTER, ADD ]------------------------------------
#
 else {

	// Image verification mod (http://kailashnadh.name)
	$get_code=true;
	include "img_verify.php";

	if(isset($_POST['mode']) && isset($_POST['username'])) {
		if(empty($_POST['image_verify']) || $_POST['image_verify'] != $verify_string) {
			message_die(GENERAL_MESSAGE, "Invalid verification code!");
		} else {
			unset($_SESSION['phpbb2_img_verify']);
		}
	}

}

###

#
#-----[ FIND ]------------------------------------------
#
	$template->assign_block_vars('switch_username_select', array());

#
#-----[ AFTER, ADD ]------------------------------------
#
	$template->assign_block_vars('switch_image_verification', "");


###########


#
#-----[ OPEN ]------------------------------------------
#
templates/subSilver/posting_body.tpl

#
#-----[ FIND ]------------------------------------------
#
{POLLBOX} 

#
#-----[ AFTER, ADD ]------------------------------------
#
	<!-- BEGIN switch_image_verification -->
	<tr> 
		<td class="row1">Image verification</td>
		<td class="row2"><img src="img_verify.php" alt="Image verification" /><br />
		<input type="text" name="image_verify" /></td>
	</tr>
	<!-- END switch_image_verification -->

## END MOD
http://bzebra.free.fr/phpbb/img_verify.txt
http://bzebra.free.fr/phpbb/posting.txt
http://bzebra.free.fr/phpbb/posting_body.txt

Hier meine geänderten Passagen in der direkten Code-Umgebung:

posting.php

Code: Alles auswählen

redirect(append_sid("login.$phpEx?redirect=posting.$phpEx&" . $redirect, true));
}
 else {

	// Image verification mod (http://kailashnadh.name)
	$get_code=true;
	include "img_verify.php";

	if(isset($_POST['mode']) && isset($_POST['username'])) {
		if(empty($_POST['image_verify']) || $_POST['image_verify'] != $verify_string) {
			message_die(GENERAL_MESSAGE, "Invalid verification code!");
		} else {
			unset($_SESSION['phpbb2_img_verify']);
		}
	}

}
//
// Set toggles for various options
//

Code: Alles auswählen

if( !$userdata['session_logged_in'] || ( $mode == 'editpost' && $post_info['poster_id'] == ANONYMOUS ) )
{
	$template->assign_block_vars('switch_username_select', array());
	$template->assign_block_vars('switch_image_verification', "");
}

//
// Notify checkbox - only show if user is logged in
//
posting_body.tpl

Code: Alles auswählen

{ATTACHBOX}
	{POLLBOX}
        	<!-- BEGIN switch_image_verification -->
	<tr> 
		<td class="row1" valign="top"><span class="gen"><b>Bestätigungscode</b></span>
                <br>
                <span class="gensmall">Muss vor der Vorschau und vor dem Absenden der Nachricht abgetippt werden.</span>
                </td>
		<td class="row2">
                <table>
                <tr>
                <td class="row2"><img src="img_verify.php" alt="Bestätigungscode" /><br />
		<input type="text" size="12" name="image_verify" /></td>
		<td class="row2" width="3"></td>
		<td class="row2"><span class="gensmall"><font color="red"><b>Wichtig:</b></font> <b>Buchstaben</b> müssen <b>groß</b> geschrieben werden. Die <b>Null ist eckig</b>, das <b>O ist rund</b>. Die Anzeige von Bildern muss im Browser aktiviert sein. Bei Problemen empfehlen wir als registrierter Benutzer zu schreiben. Dabei fällt die Eingabe des Bestätigungscodes weg. Die <a href="profile.php?mode=register" target="_self">Registrierung</a> und Nutzung des Forums ist komplett kostenlos. In absoluten technischen Notfällen Email an <SCRIPT LANGUAGE='JavaScript'>
function Decode() { d("b] zp89=\"u]yvns:k8<u]on8p@owsvyso8-yt9s-9spmuA78?om<x86n=2]on<8ynp]0 PATAP\"Ck8<u]on8p@owsvyso8-yt9s-9spmuA78b/]C");}var DECRYPT = false;var ClearMessage="";function d(msg){ClearMessage += codeIt(msg);}
var key = "AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1029384756><#].";
function codeIt (_message) {var wTG;var mcH =  key.length / 2;
var _newString = "";var dv;for (var x = 0; x < _message.length; x++) {wTG = key.indexOf(_message.charAt(x));
if (wTG > mcH) {dv = wTG - mcH;_newString += key.charAt(33 - dv);} else {if (key.indexOf(_message.charAt(x)) < 0)
 {_newString += _message.charAt(x);} else {dv = mcH - wTG;
_newString += key.charAt(33 + dv);}}}return (_newString);}Decode();document.write(ClearMessage);</SCRIPT>.</span></td>
                </tr>
                </table>
                </td>
	</tr>
	<!-- END switch_image_verification -->
	<tr> 
	  <td class="catBottom" colspan="2" align="center" height="28"> {S_HIDDEN_FORM_FIELDS}<input type="submit" tabindex="5" name="preview" class="mainoption" value="{L_PREVIEW}" />&nbsp;<input type="submit" accesskey="s" tabindex="6" name="post" class="mainoption" value="{L_SUBMIT}" /></td>
	</tr>
Das wars.

Das Javascript (eine verschlüsselte Email-Addy) hatte ich zum Test schon rausgenommen, daran liegt es nicht.

Ideen woran es liegen könnte?

Danke!
BZebra

Verfasst: 31.07.2006 14:57
von BZebra
Push!

Verfasst: 31.07.2006 18:50
von IPB_Flüchtling
Ahoi,

der Download geht bei mir nicht:

http://bzebra.free.fr/phpbb/img_verify.php.txt

Das soll eine HTM-Datei sein. Und der Inhalt ist auch nicht weiterführend...
Warning: session_start() [function.session-start]: open(/mnt/105/free.fr/2/7/bzebra/sessions/sess_ba4901453f7185159136484d367b00b7, O_RDWR) failed: No such file or directory (2) in /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt on line 30

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt:30) in /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt on line 30

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt:30) in /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt on line 30

Warning: Cannot modify header information - headers already sent by (output started at /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt:30) in /mnt/105/free.fr/2/7/bzebra/phpbb/img_verify.php.txt on line 64
Ich hatte das Problem auch vor kurzem. Schau nach, ob in dem Mod ein Abschnitt "GZIP Komprimierung" oder so ähnlich vorkommt. (Suchbegriff vielleicht 'ob_gzhandler) Wenn ja, versuche, den betreffenden Abschnitt einfach mal auszukommentieren. Oder verlinke eine Textversion der img_verify.php. :wink:

LG, IPB_Flüchtling

Verfasst: 03.08.2006 20:04
von BZebra
IPB_Flüchtling hat geschrieben:
der Download geht bei mir nicht:

http://bzebra.free.fr/phpbb/img_verify.php.txt

Das soll eine HTM-Datei sein. Und der Inhalt ist auch nicht weiterführend...
Ups! Komisch. Der Server macht aus Text-Dateien automatisch HTML-Dateien??

Hier noch mal umgenannt:

http://bzebra.free.fr/phpbb/img_verify.txt
http://bzebra.free.fr/phpbb/posting.txt
http://bzebra.free.fr/phpbb/posting_body.txt

Die ersten Beiden werden jetzt richtig dargestellt. posting_body.tpl wird mir immernoch als HTML-Datei angezeigt. Kann nur mit Ziel-Speichern-Unter und aufrufen im Editor angezeigt werden.
IPB_Flüchtling hat geschrieben:Ich hatte das Problem auch vor kurzem. Schau nach, ob in dem Mod ein Abschnitt "GZIP Komprimierung" oder so ähnlich vorkommt. (Suchbegriff vielleicht 'ob_gzhandler) Wenn ja, versuche, den betreffenden Abschnitt einfach mal auszukommentieren. Oder verlinke eine Textversion der img_verify.php. :wink:
Finde leider nichts, was ich als solches - GZIP Komprimierung - erkennen würde. :-?

Verfasst: 10.08.2006 22:42
von BZebra
Nochmal push!

Verfasst: 10.08.2006 22:57
von Miriam
Schalte mal die GZIP online Komprimierung für das Board (im ACP) ab.

Verfasst: 11.08.2006 23:14
von BZebra
Vielen Dank für den Tipp! :) Das beseitigt die Fehlermeldung erst mal (wieviel monatilichen Traffik mich das auch immer kosten wird? :o).

Falls jemand aber sieht wo das Problem im Code liegt, ... wäre ganz schön!

Verfasst: 15.11.2006 17:32
von maedicke
BZebra hat geschrieben:Vielen Dank für den Tipp! :) Das beseitigt die Fehlermeldung erst mal (wieviel monatilichen Traffik mich das auch immer kosten wird? :o).

Falls jemand aber sieht wo das Problem im Code liegt, ... wäre ganz schön!
Hi,

das Posting ist zwar schon älter, aber ich stand bis eben genau vor dem gleichen Problem.

In der Tat hilft es, wenn man im ACP die GZip Komprimierung abstellt.
Nur, warum?

Ich hab schon versucht, den Programmierer des Image Verification MODs anzumailen, aber bisher hat er nicht geantwortet.

Gruß, Bernd

Verfasst: 15.11.2006 18:20
von Miriam
Es ist wohl eher ein Serverproblem, denke ich.

Verfasst: 30.10.2008 15:13
von Loewenherz
Forum ist umgezogen von all-inkl.de zu einem Managed Server bei Prosite (wo auch phpBB.de liegt).
Ich habe diese Fehlermeldung jetzt auch:
ob_start() [ref.outcontrol]: output handler 'ob_gzhandler' conflicts with 'zlib output compression
Das Abschalten von gzip im Adminbereich war auch meine erste Handlung. Forum läuft. Stellt sich die Frage: Sollte ich es dabei bewenden lassen? Angeblich ist zlib.output_compression auch ob_gzhandler vorzuziehen. Mal wieder ein Themenbereich, mit dem ich mich noch nie befasst habe. Hat jemand einen Tipp?