500 Internal Server Error

Post Reply
andersonmavi30
OTRS expert
Posts: 66
Joined: 23 Nov 2017, 21:23
OTRS Version?: 5.0.7-25
Real Name: Anderson Martinez Virviescas

500 Internal Server Error

Post by andersonmavi30 » 04 Dec 2017, 18:23

Buenos días

Cuando realizo la instalacion final de OTRS, cuando ingreso via web, me saca este error. Alguien que me pueda ayudar. Gracias.
--------------------------
Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at root@localhost to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.
--------------------------

fcasal
OTRS superhero
Posts: 210
Joined: 21 Apr 2014, 16:14
OTRS Version?: 6.0.10

Re: 500 Internal Server Error

Post by fcasal » 10 Dec 2017, 17:38

Hola.

¿Qué error indica el log de Apache?

¿En qué punto exacto del manual de instalación te devuelve ese error?

Saludos

andersonmavi30
OTRS expert
Posts: 66
Joined: 23 Nov 2017, 21:23
OTRS Version?: 5.0.7-25
Real Name: Anderson Martinez Virviescas

Re: 500 Internal Server Error

Post by andersonmavi30 » 12 Dec 2017, 00:31

Buen dia.

fcasal. El log de apache muestra los siguiente.

[Mon Dec 11 16:48:23.395152 2017] [core:notice] [pid 1750] SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0
[Mon Dec 11 16:48:23.396029 2017] [suexec:notice] [pid 1750] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Mon Dec 11 16:48:23.418643 2017] [auth_digest:notice] [pid 1750] AH01757: generating secret for digest authentication ...
[Mon Dec 11 16:48:23.419584 2017] [lbmethod_heartbeat:notice] [pid 1750] AH02282: No slotmem from mod_heartmonitor
[Mon Dec 11 16:48:23.421850 2017] [mpm_prefork:notice] [pid 1750] AH00163: Apache/2.4.6 (CentOS) configured -- resuming normal operations
[Mon Dec 11 16:48:23.421877 2017] [core:notice] [pid 1750] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
[Mon Dec 11 17:13:52.704093 2017] [mpm_prefork:notice] [pid 1750] AH00170: caught SIGWINCH, shutting down gracefully
[Mon Dec 11 17:13:54.437433 2017] [core:notice] [pid 2982] SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0
[Mon Dec 11 17:13:54.458495 2017] [suexec:notice] [pid 2982] AH01232: suEXEC mechanism enabled (wrapper: /usr/sbin/suexec)
[Mon Dec 11 17:13:54.478825 2017] [auth_digest:notice] [pid 2982] AH01757: generating secret for digest authentication ...
[Mon Dec 11 17:13:54.479771 2017] [lbmethod_heartbeat:notice] [pid 2982] AH02282: No slotmem from mod_heartmonitor
[Mon Dec 11 17:13:54.482762 2017] [mpm_prefork:notice] [pid 2982] AH00163: Apache/2.4.6 (CentOS) configured -- resuming normal operations
[Mon Dec 11 17:13:54.482797 2017] [core:notice] [pid 2982] AH00094: Command line: '/usr/sbin/httpd -D FOREGROUND'
[Mon Dec 11 17:21:48.419696 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: ERROR: OTRS-CGI-10 Perl: 5.16.3 OS: linux Time: Mon Dec 11 17:21:48 2017
[Mon Dec 11 17:21:48.428460 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215:
[Mon Dec 11 17:21:48.428495 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Message: Can't create directory '/opt/otrs/var/tmp/CacheFileStorable':
[Mon Dec 11 17:21:48.428497 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215:
[Mon Dec 11 17:21:48.428505 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: RemoteAddress: 172.20.3.124
[Mon Dec 11 17:21:48.428513 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: RequestURI: /otrs/installer.pl
[Mon Dec 11 17:21:48.428515 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215:
[Mon Dec 11 17:21:48.428520 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Traceback (4215):
[Mon Dec 11 17:21:48.428535 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::Cache::FileStorable::new Line: 46
[Mon Dec 11 17:21:48.428550 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::ObjectManager::_ObjectBuild Line: 227
[Mon Dec 11 17:21:48.428564 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::ObjectManager::Get Line: 181
[Mon Dec 11 17:21:48.428575 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::Cache::new Line: 63
[Mon Dec 11 17:21:48.428591 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::ObjectManager::_ObjectBuild Line: 227
[Mon Dec 11 17:21:48.428604 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::ObjectManager::Get Line: 181
[Mon Dec 11 17:21:48.428618 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::SysConfig::_Init Line: 1643
[Mon Dec 11 17:21:48.428630 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::SysConfig::new Line: 73
[Mon Dec 11 17:21:48.428645 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::ObjectManager::_ObjectBuild Line: 227
[Mon Dec 11 17:21:48.428659 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::ObjectManager::Get Line: 181
[Mon Dec 11 17:21:48.428682 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::Modules::Installer::Run Line: 159
[Mon Dec 11 17:21:48.428698 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: Kernel::System::Web::InterfaceInstaller::Run Line: 132
[Mon Dec 11 17:21:48.428712 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Module: /opt/otrs/bin/cgi-bin/installer.pl Line: 39
[Mon Dec 11 17:21:48.428714 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215:
[Mon Dec 11 17:21:48.587646 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: mkdir /opt/otrs/var/tmp/CacheFileStorable: Permission denied at /opt/otrs/bin/cgi-bin/../../Kernel/System/Cache/FileStorable.pm line 87.
[Mon Dec 11 17:21:48.591757 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] End of script output before headers: installer.pl

Y esta es la parte cuando intento ingresar via web cuando voy hacer el primer inicio.

En lo que me puedas orientar te lo agradezco. Gracias.

fcasal
OTRS superhero
Posts: 210
Joined: 21 Apr 2014, 16:14
OTRS Version?: 6.0.10

Re: 500 Internal Server Error

Post by fcasal » 12 Dec 2017, 16:44

Podría ser un tema de permisos o de módulos.

¿Están todos los módulos instalados? Se comprueba con
perl /opt/otrs/bin/otrs.CheckModules.pl

Si es de permisos, habilita escritura al usuario otrs a la carpeta /opt/otrs y verifica que los pasos del punto 2.8 Step 7: File permissions han sido realizados.

Diría que va a ser de permisos, por este error:
[Mon Dec 11 17:21:48.428495 2017] [cgi:error] [pid 2987] [client 172.20.3.124:59335] AH01215: Message: Can't create directory '/opt/otrs/var/tmp/CacheFileStorable':

No puede crear el directorio, y es posible que por eso falle el resto de la instalación.

Ya me dices. Saludos.

andersonmavi30
OTRS expert
Posts: 66
Joined: 23 Nov 2017, 21:23
OTRS Version?: 5.0.7-25
Real Name: Anderson Martinez Virviescas

Re: 500 Internal Server Error

Post by andersonmavi30 » 12 Dec 2017, 20:22

Hola fcasal

Estos son los modulos instalados

cat otrs.CheckModules.pl
#!/usr/bin/perl
# --
# Copyright (C) 2001-2017 OTRS AG, http://otrs.com/
# --
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU AFFERO General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
# or see http://www.gnu.org/licenses/agpl.txt.
# --

use strict;
use warnings;

use File::Basename;
use FindBin qw($RealBin);
use lib dirname($RealBin);
use lib dirname($RealBin) . '/Kernel/cpan-lib';
use lib dirname($RealBin) . '/Custom';

use Kernel::System::Environment;
use Kernel::System::VariableCheck qw( :all );

use Linux::Distribution;
use ExtUtils::MakeMaker;
use File::Path;
use Getopt::Long;
use Term::ANSIColor;

our %InstTypeToCMD = (

# [InstType] => {
# CMD => '[cmd to install module]',
# UseModule => 1/0,
# }
# Set UseModule to 1 if you want to use the
# cpan module name of the package as replace string.
# e.g. yum install "perl(Date::Format)"
# If you set it 0 it will use the name
# for the InstType of the module
# e.g. apt-get install -y libtimedate-perl
# and as fallback the default cpan install command
# e.g. cpan DBD::Oracle
aptget => {
CMD => 'apt-get install -y %s',
UseModule => 0,
},
emerge => {
CMD => 'emerge %s',
UseModule => 0,
},
ppm => {
CMD => 'ppm install %s',
UseModule => 0,
},
yum => {
CMD => 'yum install "%s"',
SubCMD => 'perl(%s)',
UseModule => 1,
},
zypper => {
CMD => 'zypper install %s',
UseModule => 0,
},
default => {
CMD => 'cpan %s',
},
);

our %DistToInstType = (

# apt-get
debian => 'aptget',
ubuntu => 'aptget',

# emerge
# for reasons unknown, some environments return "gentoo" (incl. the quotes)
'"gentoo"' => 'emerge',
gentoo => 'emerge',

# yum
centos => 'yum',
fedora => 'yum',
rhel => 'yum',
redhat => 'yum',

# zypper
suse => 'zypper',
);

our $OSDist = Linux::Distribution::distribution_name() || '';

my $AllModules;
my $PackageList;
my $Help;
GetOptions(
all => \$AllModules,
list => \$PackageList,
h => \$Help
);

# check needed params
if ($Help) {
print "otrs.CheckModules.pl - OTRS CheckModules\n";
print "Copyright (C) 2001-2017 OTRS AG, http://otrs.com/\n";
print "usage: otrs.CheckModules.pl [-list|all] \n";
print "
otrs.CheckModules.pl
Returns all required and optional packages of OTRS.\n";
print "
otrs.CheckModules.pl -list
Returns a install command with all required packages.\n";
print "
otrs.CheckModules.pl -all
Returns all required, optional and bundled packages of OTRS.\n";
exit 1;
}

my $Options = shift || '';
my $NoColors;

if ( $ENV{nocolors} || $Options =~ m{\A nocolors}msxi ) {
$NoColors = 1;
}

my $ExitCode = 0; # success

# config
my @NeededModules = (
{
Module => 'Apache::DBI',
Required => 0,
Comment => 'Improves Performance on Apache webservers with mod_perl enabled.',
InstTypes => {
aptget => 'libapache-dbi-perl',
emerge => 'dev-perl/Apache-DBI',
zypper => 'perl-Apache-DBI',
},
},
{
Module => 'Apache2::Reload',
Required => 0,
Comment => 'Avoids web server restarts on mod_perl.',
InstTypes => {
aptget => 'libapache2-mod-perl2',
emerge => 'dev-perl/Apache-Reload',
zypper => 'apache2-mod_perl',
},
},
{
Module => 'Archive::Tar',
Required => 1,
Comment => 'Required for compressed file generation (in perlcore).',
InstTypes => {
emerge => 'perl-core/Archive-Tar',
zypper => 'perl-Archive-Tar',
},
},
{
Module => 'Archive::Zip', # required for OTRSBusiness
Required => 1,
Comment => 'Required for compressed file generation.',
InstTypes => {
aptget => 'libarchive-zip-perl',
emerge => 'dev-perl/Archive-Zip',
zypper => 'Archive-Zip',
zypper => 'perl-Archive-Zip',
},
},
{
Module => 'Crypt::Eksblowfish::Bcrypt',
Required => 0,
Comment => 'For strong password hashing.',
InstTypes => {
aptget => 'libcrypt-eksblowfish-perl',
emerge => 'dev-perl/Crypt-Eksblowfish',
zypper => 'perl-Crypt-Eksblowfish',
},
},
{
Module => 'Crypt::SSLeay',
Required => 0,
Comment => 'Required for Generic Interface REST transport and SOAP SSL connections.',
InstTypes => {
aptget => 'libcrypt-ssleay-perl',
emerge => 'dev-perl/Crypt-SSLeay',
zypper => 'perl-Crypt-SSLeay',
},
},
{
Module => 'Date::Format',
Required => 1,
InstTypes => {
aptget => 'libtimedate-perl',
emerge => 'dev-perl/TimeDate',
zypper => 'perl-TimeDate',
},
},
{
Module => 'DBI',
Required => 1,
InstTypes => {
aptget => 'libdbi-perl',
emerge => 'dev-perl/DBI',
zypper => 'perl-DBI'
},
},
{
Module => 'DBD::mysql',
Required => 0,
Comment => 'Required to connect to a MySQL database.',
InstTypes => {
aptget => 'libdbd-mysql-perl',
emerge => 'dev-perl/DBD-mysql',
zypper => 'perl-DBD-mysql'
},
},
{
Module => 'DBD::ODBC',
Required => 0,
NotSupported => [
{
Version => '1.23',
Comment =>
'This version is broken and not useable! Please upgrade to a higher version.',
},
],
Comment => 'Required to connect to a MS-SQL database.',
InstTypes => {
aptget => 'libdbd-odbc-perl',
emerge => undef,
yum => undef,
zypper => undef,
},
},
{
Module => 'DBD::Oracle',
Required => 0,
Comment => 'Required to connect to a Oracle database.',
InstTypes => {
aptget => undef,
emerge => undef,
yum => undef,
zypper => undef,
},
},
{
Module => 'DBD::Pg',
Required => 0,
Comment => 'Required to connect to a PostgreSQL database.',
InstTypes => {
aptget => 'libdbd-pg-perl',
emerge => 'dev-perl/DBD-Pg',
zypper => 'perl-DBD-Pg',
},
},
{
Module => 'Digest::SHA', # Supposed to be in perlcore, but seems to be missing on some distributions.
Required => 1,
InstTypes => {
aptget => 'libdigest-sha-perl',
emerge => 'dev-perl/Digest-SHA',
zypper => 'perl-Digest-SHA'
},
},
{
Module => 'Encode::HanExtra',
Version => '0.23',
Required => 0,
Comment => 'Required to handle mails with several Chinese character sets.',
InstTypes => {
aptget => 'libencode-hanextra-perl',
emerge => 'dev-perl/Encode-HanExtra',
zypper => 'perl-Encode-HanExtra',
},
},
{
Module => 'IO::Socket::SSL',
Required => 0,
Comment => 'Required for SSL connections to web and mail servers.',
InstTypes => {
aptget => 'libio-socket-ssl-perl',
emerge => 'dev-perl/IO-Socket-SSL',
zypper => 'perl-IO-Socket-SSL',
},
},
{
Module => 'JSON::XS',
Required => 0,
Comment => 'Recommended for faster AJAX/JavaScript handling.',
InstTypes => {
aptget => 'libjson-xs-perl',
emerge => 'dev-perl/JSON-XS',
zypper => 'perl-JSON-XS',
},
},
{
Module => 'List::Util::XS',
Required => 1,
Comment =>
"Do a 'force install Scalar::Util' via cpan shell to fix this problem. Please make sure to have an c compiler and make installed before.",
InstTypes => {
aptget => 'libscalar-list-utils-perl',
emerge => 'perl-core/Scalar-List-Utils',
zypper => 'perl-Scalar-List-Utils',
},
},
{
Module => 'LWP::UserAgent',
Required => 1,
InstTypes => {
aptget => 'libwww-perl',
emerge => 'dev-perl/libwww-perl',
zypper => 'perl-libwww-perl',
},
},
{
Module => 'Mail::IMAPClient',
Version => '3.22',
Comment => 'Required for IMAP TLS connections.',
Required => 0,
InstTypes => {
aptget => 'libmail-imapclient-perl',
emerge => 'dev-perl/Mail-IMAPClient',
zypper => 'perl-Mail-IMAPClient',
},
Depends => [
{
Module => 'IO::Socket::SSL',
Required => 0,
Comment => 'Required for IMAP TLS connections.',
InstTypes => {
aptget => 'libio-socket-ssl-perl',
emerge => 'dev-perl/IO-Socket-SSL',
zypper => 'perl-IO-Socket-SSL',
},
},
{
Module => 'Authen::SASL',
Required => 0,
Comment => 'Required for MD5 authentication mechanisms in IMAP connections.',
InstTypes => {
aptget => 'libauthen-sasl-perl',
emerge => 'dev-perl/Authen-SASL',
zypper => 'perl-Authen-SASL',
},
},
{
Module => 'Authen::NTLM',
Required => 0,
Comment => 'Required for NTLM authentication mechanism in IMAP connections.',
InstTypes => {
aptget => 'libauthen-ntlm-perl',
emerge => 'dev-perl/Authen-NTLM',
zypper => 'perl-Authen-NTLM',
},
},
],
},
{
Module => 'ModPerl::Util',
Required => 0,
Comment => 'Improves Performance on Apache webservers dramatically.',
InstTypes => {
aptget => 'libapache2-mod-perl2',
emerge => 'www-apache/mod_perl',
zypper => 'apache2-mod_perl',
},
},
{
Module => 'Net::DNS',
Required => 1,
NotSupported => [
{
Version => '0.60',
Comment =>
'This version is broken and not useable! Please upgrade to a higher version.',
},
],
InstTypes => {
aptget => 'libnet-dns-perl',
emerge => 'dev-perl/Net-DNS',
zypper => 'perl-Net-DNS',
},
},
{
Module => 'Net::LDAP',
Required => 0,
Comment => 'Required for directory authentication.',
InstTypes => {
aptget => 'libnet-ldap-perl',
emerge => 'dev-perl/perl-ldap',
zypper => 'perl-ldap',
},
},
{
Module => 'Template',
Required => 1,
Comment => 'Template::Toolkit, the rendering engine of OTRS.',
InstTypes => {
aptget => 'libtemplate-perl',
emerge => 'dev-perl/Template-Toolkit',
zypper => 'perl-Template-Toolkit',
},
},
{
Module => 'Template::Stash::XS',
Required => 1,
Comment => 'The fast data stash for Template::Toolkit.',
InstTypes => {
aptget => 'libtemplate-perl',
emerge => 'dev-perl/Template-Toolkit',
zypper => 'perl-Template-Toolkit',
},
},
{
Module => 'Text::CSV_XS',
Required => 0,
Comment => 'Recommended for faster CSV handling.',
InstTypes => {
aptget => 'libtext-csv-xs-perl',
emerge => 'dev-perl/Text-CSV_XS',
zypper => 'perl-Text-CSV_XS',
},
},
{
Module => 'Time::HiRes',
Required => 1,
Comment => 'Required for high resolution timestamps.',
InstTypes => {
aptget => 'perl',
emerge => 'perl-core/Time-HiRes',
zypper => 'perl-Time-HiRes',
},
},
{
# perlcore
Module => 'Time::Piece',
Required => 1,
Comment => 'Required for statistics.',
},
{
Module => 'XML::LibXML',
Required => 0,
Comment => 'Required for Generic Interface XSLT mapping module.',
InstTypes => {
aptget => 'libxml-libxml-perl',
zypper => 'perl-XML-LibXML',
},
},
{
Module => 'XML::LibXSLT',
Required => 0,
Comment => 'Required for Generic Interface XSLT mapping module.',
InstTypes => {
aptget => 'libxml-libxslt-perl',
zypper => 'perl-XML-LibXSLT',
},
},
{
Module => 'XML::Parser',
Required => 0,
Comment => 'Recommended for faster xml handling.',
InstTypes => {
aptget => 'libxml-parser-perl',
emerge => 'dev-perl/XML-Parser',
zypper => 'perl-XML-Parser',
},
},
{
Module => 'YAML::XS',
Required => 1,
Comment => 'Very important',
InstTypes => {
aptget => 'libyaml-libyaml-perl',
emerge => 'dev-perl/YAML-LibYAML',
zypper => 'perl-YAML-LibYAML',
},
},
);

if ($PackageList) {
my %PackageList = _PackageList( \@NeededModules );

if ( IsArrayRefWithData( $PackageList{Packages} ) ) {

my $CMD = $PackageList{CMD};

for my $Package ( @{ $PackageList{Packages} } ) {
if ( $PackageList{SubCMD} ) {
$Package = sprintf $PackageList{SubCMD}, $Package;
}
}
printf $CMD, join( ' ', @{ $PackageList{Packages} } );
print "\n";
}
}
else {
# try to determine module version number
my $Depends = 0;

for my $Module (@NeededModules) {
_Check( $Module, $Depends, $NoColors );
}

if ($AllModules) {
print "\nBundled modules:\n\n";

my %PerlInfo = Kernel::System::Environment->PerlInfoGet(
BundledModules => 1,
);

for my $Module ( sort keys %{ $PerlInfo{Modules} } ) {
_Check(
{
Module => $Module,
Required => 1,
},
$Depends,
$NoColors
);
}
}
}

sub _Check {
my ( $Module, $Depends, $NoColors ) = @_;

print " " x ( $Depends + 1 );
print "o $Module->{Module}";
my $Length = 33 - ( length( $Module->{Module} ) + ( $Depends * 2 ) );
print '.' x $Length;

my $Version = Kernel::System::Environment->ModuleVersionGet( Module => $Module->{Module} );
if ($Version) {

# cleanup version number
my $CleanedVersion = _VersionClean(
Version => $Version,
);

my $ErrorMessage;

# Test if all module dependencies are installed by requiring the module.
# Don't do this for Net::DNS as it seems to take very long (>20s) in a
# mod_perl environment sometimes.
my %DontRequire = (
'Net::DNS' => 1,
'Email::Valid' => 1, # uses Net::DNS internally
'Apache2::Reload' => 1, # is not needed / working on systems without mod_perl (like Plack etc.)
);

## no critic
if ( !$DontRequire{ $Module->{Module} } && !eval "require $Module->{Module}" ) {
$ErrorMessage .= 'Not all prerequisites for this module correctly installed. ';
}
## use critic

if ( $Module->{NotSupported} ) {

my $NotSupported = 0;
ITEM:
for my $Item ( @{ $Module->{NotSupported} } ) {

# cleanup item version number
my $ItemVersion = _VersionClean(
Version => $Item->{Version},
);

if ( $CleanedVersion == $ItemVersion ) {
$NotSupported = $Item->{Comment};
last ITEM;
}
}

if ($NotSupported) {
$ErrorMessage .= "Version $Version not supported! $NotSupported ";
}
}

if ( $Module->{Version} ) {

# cleanup item version number
my $RequiredModuleVersion = _VersionClean(
Version => $Module->{Version},
);

if ( $CleanedVersion < $RequiredModuleVersion ) {
$ErrorMessage
.= "Version $Version installed but $Module->{Version} or higher is required! ";
}
}

if ($ErrorMessage) {
if ($NoColors) {
print "FAILED! $ErrorMessage\n";
}
else {
print color('red') . 'FAILED!' . color('reset') . " $ErrorMessage\n";
}
$ExitCode = 1; # error
}
else {
my $OutputVersion = $Version;

if ( $OutputVersion =~ m{ [0-9.] }xms ) {
$OutputVersion = 'v' . $OutputVersion;
}

if ($NoColors) {
print "ok ($OutputVersion)\n";
}
else {
print color('green') . 'ok' . color('reset') . " ($OutputVersion)\n";
}
}
}
else {
my $Comment = $Module->{Comment} ? ' - ' . $Module->{Comment} : '';
my $Required = $Module->{Required};
my $Color = 'yellow';

# OS Install Command
my %InstallCommand = _GetInstallCommand($Module);

# create example installation string for module
my $InstallText = '';
if ( IsHashRefWithData( \%InstallCommand ) ) {
my $CMD = $InstallCommand{CMD};
if ( $InstallCommand{SubCMD} ) {
$CMD = sprintf $InstallCommand{CMD}, $InstallCommand{SubCMD};
}

$InstallText = " Use: '" . sprintf( $CMD, $InstallCommand{Package} ) . "'";
}

if ($Required) {
$Required = 'required';
$Color = 'red';
$ExitCode = 1; # error
}
else {
$Required = 'optional';
}
if ($NoColors) {
print "Not installed! ($Required $Comment)\n";
}
else {
print color($Color)
. 'Not installed!'
. color('reset')
. "$InstallText ($Required$Comment)\n";
}
}

if ( $Module->{Depends} ) {
for my $ModuleSub ( @{ $Module->{Depends} } ) {
_Check( $ModuleSub, $Depends + 1, $NoColors );
}
}

return 1;
}

sub _PackageList {
my ($PackageList) = @_;

my $CMD;
my $SubCMD;
my @Packages;

# if we're on Windows we don't need to see Apache + mod_perl modules
MODULE:
for my $Module ( @{$PackageList} ) {

my $Required = $Module->{Required};
my $Version = Kernel::System::Environment->ModuleVersionGet( Module => $Module->{Module} );
if ( !$Version ) {
my %InstallCommand = _GetInstallCommand($Module);

if ( $Module->{Depends} ) {

MODULESUB:
for my $ModuleSub ( @{ $Module->{Depends} } ) {
my $Required = $Module->{Required};
my %InstallCommandSub = _GetInstallCommand($ModuleSub);

next MODULESUB if !IsHashRefWithData( \%InstallCommandSub );
next MODULESUB if !$Required;

push @Packages, $InstallCommandSub{Package};
}
}

next MODULE if !IsHashRefWithData( \%InstallCommand );
next MODULE if !$Required;

$CMD = $InstallCommand{CMD};
$SubCMD = $InstallCommand{SubCMD};
push @Packages, $InstallCommand{Package};
}
}

return (
CMD => $CMD,
SubCMD => $SubCMD,
Packages => \@Packages,
);
}

sub _VersionClean {
my (%Param) = @_;

return 0 if !$Param{Version};
return 0 if $Param{Version} eq 'undef';

# replace all special characters with an dot
$Param{Version} =~ s{ [_-] }{.}xmsg;

my @VersionParts = split q{\.}, $Param{Version};

my $CleanedVersion = '';
for my $Count ( 0 .. 4 ) {
$VersionParts[$Count] ||= 0;
$CleanedVersion .= sprintf "%04d", $VersionParts[$Count];
}

return int $CleanedVersion;
}

sub _GetInstallCommand {
my ($Module) = @_;
my $CMD;
my $SubCMD;
my $Package;

# returns the installation type e.g. ppm
my $InstType = $DistToInstType{$OSDist};
my $OuputInstall = 1;

if ($InstType) {

# gets the install command for installation type
# e.g. ppm install %s
# default is the cpan install command
# e.g. cpan %s
$CMD = $InstTypeToCMD{$InstType}->{CMD};
$SubCMD = $InstTypeToCMD{$InstType}->{SubCMD};

# gets the target package
if (
exists $Module->{InstTypes}->{$InstType}
&& !defined $Module->{InstTypes}->{$InstType}
)
{
# if we a hash key for the installation type but a undefined value
# then we prevent the output for the installation command
$OuputInstall = 0;
}
elsif ( $InstTypeToCMD{$InstType}->{UseModule} ) {

# default is the cpan module name
$Package = $Module->{Module};
}
else {
# if the package name is defined for the installation type
# e.g. ppm then we use this as package name
$Package = $Module->{InstTypes}->{$InstType};
}
}

return if !$OuputInstall;

if ( !$CMD || !$Package ) {
$CMD = $InstTypeToCMD{default}->{CMD};
$SubCMD = $InstTypeToCMD{default}->{SubCMD};
$Package = $Module->{Module};
}

return (
CMD => $CMD,
SubCMD => $SubCMD,
Package => $Package,
);
}



Estos son los permisos tiene la carpeta

drwxr-xr-x. 9 otrs apache 4,0K dic 12 11:39 otrs

La guia que estoy tomando de instalacion es esta

https://www.vultr.com/docs/how-to-insta ... n-centos-7


En lo que me puedas ayudar, te agradezco. Gracias.

jojo
Moderator
Posts: 14402
Joined: 26 Jan 2007, 14:50
OTRS Version?: Git Master
Contact:

Re: 500 Internal Server Error

Post by jojo » 12 Dec 2017, 20:38

"Production": OTRS™ 6, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com :: Share your ideas

andersonmavi30
OTRS expert
Posts: 66
Joined: 23 Nov 2017, 21:23
OTRS Version?: 5.0.7-25
Real Name: Anderson Martinez Virviescas

Re: 500 Internal Server Error

Post by andersonmavi30 » 13 Dec 2017, 00:26

Jojo creo que la finalidad de un foro es poder compartir la experiencia de OTRS con otras personas y si se presento el error poder socializarlo con las demas personas del foro. Adicionalmente para buscar en internet ya lo hubiera hecho, pesima ayuda por parte suya. Gracias por nada.

jojo
Moderator
Posts: 14402
Joined: 26 Jan 2007, 14:50
OTRS Version?: Git Master
Contact:

Re: 500 Internal Server Error

Post by jojo » 13 Dec 2017, 01:10

Please read the docs and don't post wrong things here! Posting the perl code will help nobody.
"Production": OTRS™ 6, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com :: Share your ideas

User avatar
klausneil
OTRS ninja
Posts: 648
Joined: 29 May 2012, 22:47
OTRS Version?: 6.0.6
Real Name: Klaus Salazar
Company: SLP
Location: Perú

Re: 500 Internal Server Error

Post by klausneil » 14 Dec 2017, 06:14

andersonmavi30 wrote:Jojo creo que la finalidad de un foro es poder compartir la experiencia de OTRS con otras personas y si se presento el error poder socializarlo con las demas personas del foro. Adicionalmente para buscar en internet ya lo hubiera hecho, pesima ayuda por parte suya. Gracias por nada.
Si, estoy deacuerdo contigo y con respecto a tu problema que permisos tienes para con /opt/otrs/

jepics44
OTRS newbie
Posts: 10
Joined: 23 Jan 2018, 18:07
OTRS Version?: OTRS 6
Real Name: Lemi
Company: nada

Re: 500 Internal Server Error

Post by jepics44 » 30 Jan 2018, 15:36

te comento mi experiencia. me pasaba cuando tenia otrs virtualizado (CentOS 7)en otro hardware

cuando yo reiniciaba, apache2 y mariadb no arrancaban solos y encima estaba el firewall. lo solucionaba corriendo estos comandos uno a la vez
systemctl start httpd
systemctl start mariadb
systemctl stop firewalld
systemctl disable firewalld

Post Reply