?
Current Path : /usr/share/lve/modlscapi/utils/ |
Linux gator3171.hostgator.com 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 |
Current File : //usr/share/lve/modlscapi/utils/inserphpconf.pm |
#!/usr/local/cpanel/3rdparty/bin/perl # Copyright (c) Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2018 All Rights Reserved # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. BEGIN { unshift @INC, '/usr/local/cpanel', '/scripts'; } my $pckg_name = 'Cpanel'; use strict; eval "use " .$pckg_name . "::CPAN::Hash::Merge ();"; if ($@){ $pckg_name = 'cPScript'; eval "use " .$pckg_name . "::CPAN::Hash::Merge ();"; } use strict; use warnings; #eval "use " .$pckg_name . "::CPAN::Hash::Merge ();"; eval "use " .$pckg_name . "::DataStore ();"; no warnings 'uninitialized'; my $main_conf_ref = Cpanel::DataStore::fetch_ref('/var/cpanel/conf/apache/main'); my $ref_type=ref($main_conf_ref->{'main'}{'include'}{'items'}); my $etalon_ref={"main"=>{"include"=>{"directive"=>"include","items"=>[{include=>"\"/usr/local/apache/conf/php.conf\""}]}}}; if ($ref_type eq 'ARRAY'){ my $res=$main_conf_ref->{'main'}{'include'}{'items'}; my $find=0; my $empty_find=0; for(my $index=0;$index<@$res;$index++) { my $item_ref=@$res[$index]; if ( !defined($item_ref->{'include'})) { $empty_find = 1; } else { if ( index($item_ref->{'include'},"php.conf")!=-1 ){ $find=1; } } } if ( $find==0 ){ for(my $index=0;$index<@$res;$index++) { my $item_ref=@$res[$index]; if ( index($item_ref->{'include'},"php.conf")!=-1 ){ delete @$res[$index]; } } push(@$res,{ "include"=>"\"/usr/local/apache/conf/php.conf\"" }); Cpanel::DataStore::store_ref( '/var/cpanel/conf/apache/main', $main_conf_ref ); } if( $empty_find==1 ) { @$res = grep { defined $_ } @$res; Cpanel::DataStore::store_ref( '/var/cpanel/conf/apache/main', $main_conf_ref ); } } else { $main_conf_ref->{'main'} = Cpanel::CPAN::Hash::Merge::merge($main_conf_ref->{'main'}, $etalon_ref->{'main'}); Cpanel::DataStore::store_ref( '/var/cpanel/conf/apache/main', $main_conf_ref ); }