PHP Скрипт создает несколько процессов apache2 - PullRequest
0 голосов
/ 11 февраля 2020

Я только что мигрировал с Ubuntu 14 с PHP 5.6 на Ubuntu 18.04 с PHP7 .2 .

Моя спецификация сервера:

  • Версия сервера: Apache / 2.4.29 (Ubuntu)
  • Построение сервера: 2019-09-16T12: 58: 48
  • PHP 7.2.24

Я заметил, что у меня иногда было открыто много процессов apache2, и мой сервер взломал sh, и мне нужно было перезапустить mysql и apache .

После некоторого тестирования я наконец обнаружил root своих проблем: у меня есть скрипт, который импортирует клиентов в Magento (довольно просто c), на самом деле много скриптов и когда я их запускаю все эти процессы создаются.

Я не понимаю, почему скрипт php, выполняемый в командной строке, может открыть apache процессов.

Спасибо, и любая помощь приветствуется.

Эти модули в настоящее время включены в apache2:

 core_module (static)
 so_module (static)
 watchdog_module (static)
 http_module (static)
 log_config_module (static)
 logio_module (static)
 version_module (static)
 unixd_module (static)
 access_compat_module (shared)
 alias_module (shared)
 auth_basic_module (shared)
 authn_core_module (shared)
 authn_file_module (shared)
 authz_core_module (shared)
 authz_host_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 cache_module (shared)
 deflate_module (shared)
 dir_module (shared)
 env_module (shared)
 expires_module (shared)
 file_cache_module (shared)
 filter_module (shared)
 headers_module (shared)
 mime_module (shared)
 mpm_prefork_module (shared)
 negotiation_module (shared)
 php7_module (shared)
 proxy_module (shared)
 proxy_balancer_module (shared)
 proxy_http_module (shared)
 reqtimeout_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 slotmem_shm_module (shared)
 socache_shmcb_module (shared)
 ssl_module (shared)
 status_module (shared)
 unique_id_module (shared)

Код сценария:

<?php
require_once(realpath(__DIR__) . '/bootstrap.php');
$websiteId = 237;
$storeId = 0;
$row = 1;
$myfile = fopen("../errors.txt", "w+") or die("Unable to open file!");
if (($handle = fopen("staff.csv", "r")) !== FALSE) {

    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$roles = $data[6];
$xname = explode(" ", $data[0]);
$pass = "pass";                                                                                                                                                       [5]."\n";}
        $customer = Mage::getModel("customer/customer");
        $customer->setWebsiteId($websiteId)
                ->setStoreId($storeId)
                ->setFirstname($data[0])
                ->setLastname($data[1])
                ->setEmail($data[3])
                ->setTelephone('01234567')
                ->setPassword($pass);
        try{
            $customer->save();
        }
        catch (Exception $e) {
            Zend_Debug::dump($e->getMessage());
        }
    }
    fclose($handle);
}
?>

bootstrap код:

<?php
ini_set('memory_limit', '1024M');
set_time_limit(0);

require_once realpath(__DIR__) . '/../../../www/app/Mage.php';

Mage::setIsDeveloperMode(true);

Mage::app('admin')->setUseSessionInUrl(false);

$userModel = Mage::getModel('admin/user');
$userModel->setUserId(0);
Mage::getSingleton('admin/session')->setUser($userModel);

Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);

error_reporting(-1);
ini_set('display_errors', 1);
?>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...