Visualizzazione dei risultati da 1 a 1 su 1
  1. #1

    Apache problema Time Out.

    Salve, ho uno stranissimo problema e vorrei condividere con voi un po' di impressioni, chiedendovi anche alcuni consigli.

    Premesse: Apache 2.4 su server Windows remoto con SSL abilitato.

    Il portale in oggetto funziona alla grande, ci colleghiamo regolarmente decine di noi senza nessun problema. Ad esempio si collegano regolarmente gli utenti A, B, C, D ed E senza nessun problema, non appena prova a collegarsi l'utente X da quel momento tutti gli utenti, A, B, C, D, E ed X ricevono messaggio di time out error e non funziona più nulla, sono costretto a riavviare apache per ripristinare il tutto.

    Trovo la cosa frustrante ed assurda, non mi spiego come possa un utente mandare in crash un sistema remoto bloccando, quindi, la connessione a tutti gli utenti.

    Nei file di log non ci sono particolari errori, non è chiaro cosa può essere successo. Qualcuno ha mai avuto un'esperienza simile?

    Grazie a tutti per l'eventuale aiuto!!!
    Chi salva una vita salva il mondo intero.

  2. #2
    Oltre ad Apache entrano in gioco altri fattori. Che linguaggio usa il portale, php? Quale? 5.6, 7.0, 7.1....
    Come è configurato il portale, a livello di apache? cgi, fast-cgi, suexec, fpm ecc ecc.
    Che backend di database usi? MySql, mssql, oracle, mariadb....
    Comunque, a occhio sembra un collo di bottiglia da qualche parte relativo al numero di connessioni che, quando vengono superate, inchioda tutto.
    Verifica per esempio se hai qualcosa di questo genere nel caso di php e virtual hosts
    codice:
    <IfModule mod_fcgid.c>
                                    FcgidIdleTimeout 300
                                    FcgidProcessLifeTime 3600
                                    # FcgidMaxProcesses 1000
                                    FcgidMaxRequestsPerProcess 5000
                                    FcgidMinProcessesPerClass 0
                                    FcgidMaxProcessesPerClass 10
                                    FcgidConnectTimeout 3
                                    FcgidIOTimeout 600
                                    FcgidBusyTimeout 3600
                                    FcgidMaxRequestLen 1073741824
    </IfModule>
    <Directory /var/www/clients/client1/web11/web>
                                    <FilesMatch "\.php[345]?$">
                                            SetHandler fcgid-script
                                    </FilesMatch>
                                    FCGIWrapper /var/www/php-fcgi-scripts/web11/.php-fcgi-starter .php
                                    FCGIWrapper /var/www/php-fcgi-scripts/web11/.php-fcgi-starter .php3
                                    FCGIWrapper /var/www/php-fcgi-scripts/web11/.php-fcgi-starter .php4
                                    FCGIWrapper /var/www/php-fcgi-scripts/web11/.php-fcgi-starter .php5
                                    Options +ExecCGI
    .....
    </Directory>
    
    e che dentro a /var/www/php-fcgi-scripts/web11/.php-fcgi-starter ci sia qualcosa di questo tipo
    codice:
    #!/bin/sh
    PHPRC="/etc/php/7.4/cgi/"
    export PHPRC
    PHP_DOCUMENT_ROOT="/var/www/clients/client1/web11"
    export PHP_DOCUMENT_ROOT
    # The variable PHP_FCGI_CHILDREN is onyl useful for lighty or nginx as apache
    # mod_fcgi will control the number of childs themself and never use the additional processes.
    # PHP_FCGI_CHILDREN=8
    # export PHP_FCGI_CHILDREN
    PHP_FCGI_MAX_REQUESTS=5000
    export PHP_FCGI_MAX_REQUESTS
    export TMP=/var/www/clients/client1/web11/tmp
    export TMPDIR=/var/www/clients/client1/web11/tmp
    export TEMP=/var/www/clients/client1/web11/tmp
    exec /usr/bin/php-cgi \
     -d open_basedir="/var/www/clients/client1/web11/web:/var/www/clients/client1/web11/private:/var/www/clients/client1/web11/tmp:/var/www/sito.com/web:/srv/www/sito.com/web:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom" \
    -d upload_tmp_dir=/var/www/clients/client1/web11/tmp \
    -d session.save_path=/var/www/clients/client1/web11/tmp \
    -d sendmail_path="/usr/sbin/sendmail -t -i -f webmaster@sito.com" \
     $1
    

    Oltre al log di apache verifica i log del database, potrebbe essere un problema lì...

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.