Nach Update von 3.0.8 auf 3.3.12: Apache Server Fehler

Hilfe zu Znuny Problemen aller Art
Locked
emmerell
Znuny newbie
Posts: 5
Joined: 01 Jun 2011, 15:48
Znuny Version: 3.08

Nach Update von 3.0.8 auf 3.3.12: Apache Server Fehler

Post by emmerell »

Hallo zusammen,

ich habe heute unser OTRS 3.0.8 nach einem Testen in einem Testsystem auf die Version 3.3.12 migriert. Hatte eigentlich auch alles wunderbar funktioniert und ich konnte vorhin auch schon einige Tickets neu bearbeiten, schließen, Mails aus OTRS schreiben und Zeiten eintragen.
Plötzlich jedoch (keine Ahnung warum, da ich dann nichts mehr wirklich systemkritisches an OTRS gemacht habe) funktionieren viele Funktionen nicht mehr. Es kann nicht mehr auf die Benutzereinstellungen zugegriffen werden, keine neuen Agents können angelegt werden, keine Mails verschickt werden oder zu Tickets zugeordnet werden.

Im Apache Serverlog erscheint dann immer die folgende Meldung:

Code: Select all

[Mon Mar 09 16:31:53 2015] [error] Malformed UTF-8 character (fatal) at /opt/otrs/Kernel/cpan-lib/JSON/PP.pm line 468.\n
Mir ist nicht klar wo ich nun anfangen soll zu suchen und welche Daten Apache meint die nicht UTF 8 sind. Die Datenbank sollte es eigentlich sein.

Hier ist mal die Config.pm

Code: Select all

# --
# Kernel/Config.pm - Config file for OTRS kernel
# Copyright (C) 2001-2010 xxx, http://otrs.org/
# --
# $Id: Config.pm.dist,v 1.23 2010/01/13 22:25:00 martin Exp $
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (AGPL). If you
# did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
# --
#  Note:
#
#  -->> OTRS does have a lot of config settings. For more settings
#       (Notifications, Ticket::ViewAccelerator, Ticket::NumberGenerator,
#       LDAP, PostMaster, Session, Preferences, ...) see
#       Kernel/Config/Defaults.pm and copy your wanted lines into "this"
#       config file. This file will not be changed on update!
#
# --

package Kernel::Config;

sub Load {
    my $Self = shift;
    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
    #                                                      #
    #         Start of your own config options!!!          #
    #                                                      #
    # ---------------------------------------------------- #

	
		# -----------------------------------------------------#
		# AD-Integration Customer                              #
		# -----------------------------------------------------#
			
			# Agents Auth 
			$Self->{'AuthModule1'} = 'Kernel::System::Auth::LDAP';
			$Self->{'AuthModule::LDAP::Host1'} = 'xxx'; 
			$Self->{'AuthModule::LDAP::BaseDN1'} = 'xxx';
			$Self->{'AuthModule::LDAP::UID1'} = 'sAMAccountName';
			$Self->{'AuthModule::LDAP::SearchUserDN1'} = 'xxx';
			$Self->{'AuthModule::LDAP::SearchUserPw1'} = 'xxx';

			
			# Agents Auth 
			$Self->{'AuthModule2'} = 'Kernel::System::Auth::LDAP';
			$Self->{'AuthModule::LDAP::Host2'} = 'xxxx'; 
			$Self->{'AuthModule::LDAP::BaseDN2'} = 'xxx';
			$Self->{'AuthModule::LDAP::UID2'} = 'sAMAccountName';
			$Self->{'AuthModule::LDAP::SearchUserDN2'} = 'xxx';
			$Self->{'AuthModule::LDAP::SearchUserPw2'} = 'xxx';

			
			# Customer Auth 
			$Self->{'Customer::AuthModule1'} = 'Kernel::System::CustomerAuth::LDAP';
			$Self->{'Customer::AuthModule::LDAP::Host1'} = 'xxx';
			$Self->{'Customer::AuthModule::LDAP::BaseDN1'} = 'xxx';
			$Self->{'Customer::AuthModule::LDAP::UID1'} = 'sAMAccountName';
			$Self->{'Customer::AuthModule::LDAP::SearchUserDN1'} = 'xxx';
			$Self->{'Customer::AuthModule::LDAP::SearchUserPw1'} = 'xxx';
			
			# Customer Auth 
			$Self->{'Customer::AuthModule2'} = 'Kernel::System::CustomerAuth::LDAP';
			$Self->{'Customer::AuthModule::LDAP::Host2'} = '1xx';
			$Self->{'Customer::AuthModule::LDAP::BaseDN2'} = 'xxx';
			$Self->{'Customer::AuthModule::LDAP::UID2'} = 'sAMAccountName';
			$Self->{'Customer::AuthModule::LDAP::SearchUserDN2'} = 'xxx';
			$Self->{'Customer::AuthModule::LDAP::SearchUserPw2'} = 'xxx';
			

				# Customer Settings
				$Self->{CustomerUser} = {
				Name => 'Pfeiffer AD',
				Module => 'Kernel::System::CustomerUser::LDAP',
				Params => {
					Host => 'xxx',
					BaseDN => 'xxx',
					SSCOPE => 'sub',
					UserDN => 'xxx',
					UserPw => 'xxx',
		            	AlwaysFilter => '(mail=*)',
					SourceCharset => 'utf-8',
					DestCharset   => 'utf-8',
					Params => {
		                port => 389,
						timeout => 120,
						async => 0,
						version => 3,
					},
				},
				ReadOnly => 1,
				CustomerKey => 'sAMAccountName',
				CustomerID => 'mail',
				CustomerUserListFields => ['cn', 'mail'],
				CustomerUserSearchFields => ['cn', 'givenname', 'mail'],
				CustomerUserSearchPrefix => '',
				CustomerUserSearchSuffix => '*',
				CustomerUserSearchListLimit => 250,
				CustomerUserPostMasterSearchFields => ['mail'],
				CustomerUserNameFields => ['givenname', 'sn'],
				CustomerUserExcludePrimaryCustomerID => 0,
				AdminSetPreferences => 0,
				CacheTTL => 120,
				Map => [
					[ 'UserFirstname',  'Firstname',   'givenname',       1, 1, 'var', '', 0 ],
					[ 'UserLastname',   'Lastname',    'sn',              1, 1, 'var', '', 0 ],
					[ 'UserLogin',      'Username',    'sAMAccountName',             1, 1, 'var', '', 0 ],
					[ 'UserEmail',      'Email',       'mail',            1, 1, 'var', '', 0 ],
					[ 'UserCustomerID', 'CustomerID',  'mail',            0, 1, 'var', '', 0 ],
					[ 'UserPhone',      'Phone',      'telephoneNumber', 1, 0, 'var', '', 0 ],
					[ 'UserMobile',     'Mobile',      'mobile', 1, 0, 'var', '', 0 ],
					[ 'UserRoom',       'Room',        'physicalDeliveryOfficeName', 1, 0, 'var', '', 0 ],
				],
			};

				# Customer Settings
				$Self->{CustomerUser2} = {
				Name => 'TD',
				Module => 'Kernel::System::CustomerUser::LDAP',
				Params => {
					Host => 'xxx',
					BaseDN => 'xxx',
					SSCOPE => 'sub',
					UserDN => 'xxx',
					UserPw => 'xxx',
		            		AlwaysFilter => '(mail=*)',
					SourceCharset => 'utf-8',
					DestCharset   => 'utf-8',
					Params => {
		               		port => 389,
					timeout => 120,
					async => 0,
					version => 3,
					},
				},
				ReadOnly => 1,
				CustomerKey => 'sAMAccountName',
				CustomerID => 'mail',
				CustomerUserListFields => ['cn', 'mail'],
				CustomerUserSearchFields => ['cn', 'givenname', 'mail'],
				CustomerUserSearchPrefix => '',
				CustomerUserSearchSuffix => '*',
				CustomerUserSearchListLimit => 250,
				CustomerUserPostMasterSearchFields => ['mail'],
				CustomerUserNameFields => ['givenname', 'sn'],
				CustomerUserExcludePrimaryCustomerID => 0,
				AdminSetPreferences => 0,
				CacheTTL => 120,
				Map => [
					[ 'UserFirstname',  'Firstname',   'givenname',       1, 1, 'var', '', 0 ],
					[ 'UserLastname',   'Lastname',    'sn',              1, 1, 'var', '', 0 ],
					[ 'UserLogin',      'Username',    'sAMAccountName',             1, 1, 'var', '', 0 ],
					[ 'UserEmail',      'Email',       'mail',            1, 1, 'var', '', 0 ],
					[ 'UserCustomerID', 'CustomerID',  'mail',            0, 1, 'var', '', 0 ],
					[ 'UserPhone',      'Phone',      'telephoneNumber', 1, 0, 'var', '', 0 ],
					[ 'UserMobile',     'Mobile',      'mobile', 1, 0, 'var', '', 0 ],
					[ 'UserRoom',       'Room',        'physicalDeliveryOfficeName', 1, 0, 'var', '', 0 ],
				],
			};


				# Customer Settings 
				$Self->{CustomerUser4} = {
				Name => 'xxx',
				Module => 'Kernel::System::CustomerUser::LDAP',
				Params => {
					Host => 'xxx',
					BaseDN => 'xxx',
					SSCOPE => 'sub',
					UserDN => 'xxx',
					UserPw => 'xxx',
		            ##		AlwaysFilter => '(mail=*)',
					SourceCharset => 'utf-8',
					DestCharset   => 'utf-8',
					Params => {
		                	port => 389,
					timeout => 120,
					async => 0,
					version => 3,
					},
				},
				ReadOnly => 1,
				CustomerKey => 'sAMAccountName',
				CustomerID => 'mail',
				CustomerUserListFields => ['cn', 'mail'],
				CustomerUserSearchFields => ['cn', 'givenname', 'mail'],
				CustomerUserSearchPrefix => '',
				CustomerUserSearchSuffix => '*',
				CustomerUserSearchListLimit => 250,
				CustomerUserPostMasterSearchFields => ['mail'],
				CustomerUserNameFields => ['givenname', 'sn'],
				CustomerUserExcludePrimaryCustomerID => 0,
				AdminSetPreferences => 0,
				CacheTTL => 120,
				Map => [
					[ 'UserFirstname',  'Firstname',   'givenname',       1, 1, 'var', '', 0 ],
					[ 'UserLastname',   'Lastname',    'sn',              1, 1, 'var', '', 0 ],
					[ 'UserLogin',      'Username',    'sAMAccountName',             1, 1, 'var', '', 0 ],
					[ 'UserEmail',      'Email',       'mail',            1, 1, 'var', '', 0 ],
					[ 'UserCustomerID', 'CustomerID',  'mail',            0, 1, 'var', '', 0 ],
					[ 'UserPhone',      'Phone',      'telephoneNumber', 1, 0, 'var', '', 0 ],
					[ 'UserMobile',     'Mobile',      'mobile', 1, 0, 'var', '', 0 ],
					[ 'UserRoom',       'Room',        'physicalDeliveryOfficeName', 1, 0, 'var', '', 0 ],
				],
			};



		# -----------------------------------------------------#

			# Customer Settings
			$Self->{CustomerUser3} = {
				Name => 'ABS',
				Module => 'Kernel::System::CustomerUser::LDAP',
				Params => {
					Host => 'xxx',
					BaseDN => 'xxx',
					SSCOPE => 'sub',
					UserDN => 'xxxx',
					UserPw => 'xxx',
		            		AlwaysFilter => '(mail=*)',
					SourceCharset => 'utf-8',
					DestCharset   => 'utf-8',
					Params => {
		               		port => 389,
					timeout => 120,
					async => 0,
					version => 3,
					},
				},
				ReadOnly => 1,
				CustomerKey => 'sAMAccountName',
				CustomerID => 'mail',
				CustomerUserListFields => ['cn', 'mail'],
				CustomerUserSearchFields => ['cn', 'givenname', 'mail', 'displayname'],
				CustomerUserSearchPrefix => '',
				CustomerUserSearchSuffix => '*',
				CustomerUserSearchListLimit => 250,
				CustomerUserPostMasterSearchFields => ['mail'],
				CustomerUserNameFields => ['givenname', 'sn'],
				CustomerUserExcludePrimaryCustomerID => 0,
				AdminSetPreferences => 0,
				CacheTTL => 120,
				Map => [
					[ 'UserFirstname',  'Firstname',   'givenname',       1, 1, 'var', '', 0 ],
					[ 'UserLastname',   'Lastname',    'sn',              1, 1, 'var', '', 0 ],
					[ 'UserLogin',      'Username',    'sAMAccountName',             1, 1, 'var', '', 0 ],
					[ 'UserEmail',      'Email',       'mail',            1, 1, 'var', '', 0 ],
					[ 'UserCustomerID', 'CustomerID',  'mail',            0, 1, 'var', '', 0 ],
					[ 'UserPhone',      'Phone',      'telephoneNumber', 1, 0, 'var', '', 0 ],
					[ 'UserMobile',     'Mobile',      'mobile', 1, 0, 'var', '', 0 ],
					[ 'UserRoom',       'Room',        'physicalDeliveryOfficeName', 1, 0, 'var', '', 0 ],
				],
			};


		# -----------------------------------------------------#



    # ---------------------------------------------------- #

    # ---------------------------------------------------- #
    # database settings                                    #
    # ---------------------------------------------------- #
    # DatabaseHost
    # (The database host.)
    $Self->{'DatabaseHost'} = 'xxx';
    # Database
    # (The database name.)
    $Self->{'Database'} = 'otrs';
    # $Self->{'Database'} = 'otrs_dev';
    # DatabaseUser
    # (The database user.)
    $Self->{'DatabaseUser'} = 'otrs';
    # DatabasePw
    # (The password of database user. You also can use bin/otrs.CryptPassword.pl
    # for crypted passwords.)
    $Self->{'DatabasePw'} = 'xxx';
    # DatabaseDSN
    # (The database DSN for MySQL ==> more: "man DBD::mysql")
    $Self->{DatabaseDSN} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost};";

    # (The database DSN for PostgreSQL ==> more: "man DBD::Pg")
    # if you want to use a local socket connection
#    $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";
    # if you want to use a tcpip connection
#    $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};host=$Self->{DatabaseHost};";

    # ---------------------------------------------------- #
    # fs root directory
    # ---------------------------------------------------- #
    $Self->{Home} = '/opt/otrs';

    # ---------------------------------------------------- #
    # insert your own config settings "here"               #
    # config settings taken from Kernel/Config/Defaults.pm #
    # ---------------------------------------------------- #
    # $Self->{SessionUseCookie} = 0;
    # $Self->{CheckMXRecord} = 0;

    # ---------------------------------------------------- #

    # ---------------------------------------------------- #
    # data inserted by installer                           #
    # ---------------------------------------------------- #
    # $DIBI$
    $Self->{'DefaultCharset'} = 'utf-8';

    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
    #                                                      #
    #           End of your own config options!!!          #
    #                                                      #
    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
}

# ---------------------------------------------------- #
# needed system stuff (don't edit this)                #
# ---------------------------------------------------- #
use strict;
use warnings;

use vars qw(@ISA $VERSION);
$VERSION = qw($Revision: 1.23 $)[1];

use Kernel::Config::Defaults;
push (@ISA, 'Kernel::Config::Defaults');

# -----------------------------------------------------#

1;
Was mir gerade einfällt: Ich hatte kurz zuvor in der Sysconfig das Modul der Fulltextsearch in der Agenttoolbar neugeladen und gespeichert. Kann es damit zu tun haben?

Im Moment kann man das System leider nicht wirklich nutzen und ich habe keine Ahnung wo man am Besten anfangen soll. Und ich wollte nun nicht auf das Backup zurück.

Hat einer einen Tipp für mich?

Danke

Gruß
Michael

P.S.: Wenn noch weitere Infos gebraucht werden, kurz Bescheid geben :).
OTRS 3.0.8 / Linux
emmerell
Znuny newbie
Posts: 5
Joined: 01 Jun 2011, 15:48
Znuny Version: 3.08

Re: Nach Update von 3.0.8 auf 3.3.12: Apache Server Fehler

Post by emmerell »

Hallo nochmal,
Es hat wohl mit der Datei /opt/otrs/Kernel/Config/Files/ZZZAuto.pm zu tun. Wenn ich diese aus dem Backup der alten Version herstelle funktioniert es, bis ich Änderungen über Sysconfig mache. Danach kommt der Fehler.

Hat einer eine Idee?

Danke

Michael
OTRS 3.0.8 / Linux
Rooobaaat
Znuny wizard
Posts: 432
Joined: 11 Sep 2014, 16:28
Znuny Version: OTRS 5.0.x

Re: Nach Update von 3.0.8 auf 3.3.12: Apache Server Fehler

Post by Rooobaaat »

Nimm nochmal die alte ZZZAuto.pm und lass BEVOR du irgendwelche Änderungen machst mal das SetPermissions-Skript und otrs.RebuildConfig.pl drüberlaufen.
My english is better than your german :P

"Produktiv": OTRS: 5.0.x, OTRS::ITSM 5.0.x
"Testing": OTRS 6 git
OS: Debian 8.0 (Jessie)
Apache2.4.10/MySQL 5.5.41
Locked