Ankündigung

Einklappen
Keine Ankündigung bisher.

Meine VHOST Datei

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Meine VHOST Datei

    Ich wurde nach einer Standard Host Datei gefragt. Ich habe da die IP Adresse auf 8.8.8.8 geändert und den Hostnamen, bzw Host verborgen. Sollte aber eigentlich noch lesbar sein ;)

    Vielleicht kann der ein oder andere das ja mal gebrauchen. Auch ist da schon das HTTP2 Protokoll eingebunden. Der Server nutzt Apache Event, PHP Ondemand und dann auch HTTP2.

    Code:
    <Directory /var/www/mein.hostname>
            AllowOverride None
                    Require all denied
            </Directory>
    
    <VirtualHost 8.8.8.8:80>
    
                        DocumentRoot /var/www/clients/client1/web1/web
    
            ServerName mein.hostname
            ServerAdmin webmaster@mein.hostname
    
    
            ErrorLog /var/log/ispconfig/httpd/mein.hostname/error.log
    
            Alias /error/ "/var/www/mein.hostname/web/error/"
            ErrorDocument 400 /error/400.html
            ErrorDocument 401 /error/401.html
            ErrorDocument 403 /error/403.html
            ErrorDocument 404 /error/404.html
            ErrorDocument 405 /error/405.html
            ErrorDocument 500 /error/500.html
            ErrorDocument 502 /error/502.html
            ErrorDocument 503 /error/503.html
    
            <IfModule mod_ssl.c>
            </IfModule>
    
            <Directory /var/www/mein.hostname/web>
                    # Clear PHP settings of this website
                    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                            SetHandler None
                    </FilesMatch>
                    Options +FollowSymLinks
                    AllowOverride All
                                    Require all granted
                            </Directory>
            <Directory /var/www/clients/client1/web1/web>
                    # Clear PHP settings of this website
                    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                            SetHandler None
                    </FilesMatch>
                    Options +FollowSymLinks
                    AllowOverride All
                                    Require all granted
                            </Directory>
    
    
    
    
            # suexec enabled
            <IfModule mod_suexec.c>
                SuexecUserGroup web1 client1
            </IfModule>
            <IfModule mod_fastcgi.c>
                    <Directory /var/www/clients/client1/web1/cgi-bin>
                                            Require all granted
                                        </Directory>
                    <Directory /var/www/mein.hostname/web>
                        <FilesMatch "\.php[345]?$">
                            SetHandler php-fcgi
                        </FilesMatch>
                    </Directory>
                    <Directory /var/www/clients/client1/web1/web>
                        <FilesMatch "\.php[345]?$">
                            SetHandler php-fcgi
                        </FilesMatch>
                    </Directory>
                    Action php-fcgi /php-fcgi virtual
                    Alias /php-fcgi /var/www/clients/client1/web1/cgi-bin/php-fcgi-8.8.8.8-80-mein.hostname
                    FastCgiExternalServer /var/www/clients/client1/web1/cgi-bin/php-fcgi-8.8.8.8-80-mein.hostname -idle-timeout 300 -socket /var/lib/php7.2-fpm/web1.sock -pass-header Authorization  -pass-header Content-Type
            </IfModule>
            <IfModule mod_proxy_fcgi.c>
                #ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ unix:///var/lib/php7.2-fpm/web1.sock|fcgi://localhost//var/www/clients/client1/web1/web/$1
                <Directory /var/www/clients/client1/web1/web>
                    <FilesMatch "\.php[345]?$">
                            SetHandler "proxy:unix:/var/lib/php7.2-fpm/web1.sock|fcgi://localhost"
                    </FilesMatch>
                </Directory>
                </IfModule>
    
    
    
            # add support for apache mpm_itk
            <IfModule mpm_itk_module>
                AssignUserId web1 client1
            </IfModule>
    
            <IfModule mod_dav_fs.c>
            # Do not execute PHP files in webdav directory
                <Directory /var/www/clients/client1/web1/webdav>
                    <ifModule mod_security2.c>
                        SecRuleRemoveById 960015
                        SecRuleRemoveById 960032
                    </ifModule>
                    <FilesMatch "\.ph(p3?|tml)$">
                        SetHandler None
                    </FilesMatch>
                </Directory>
                DavLockDB /var/www/clients/client1/web1/tmp/DavLock
                # DO NOT REMOVE THE COMMENTS!
                # IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
          # WEBDAV BEGIN
                # WEBDAV END
            </IfModule>
    
    
    
    </VirtualHost>
    
    
    <VirtualHost 8.8.8.8:443>
    
                        DocumentRoot /var/www/clients/client1/web1/web
    
            ServerName mein.hostname
            ServerAdmin webmaster@mein.hostname
    
            Protocols h2 http/1.1
            SSLProtocol All -SSLv2 -SSLv3
            SSLCipherSuite 'EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA !RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS'
    
            ErrorLog /var/log/ispconfig/httpd/mein.hostname/error.log
    
            Alias /error/ "/var/www/mein.hostname/web/error/"
            ErrorDocument 400 /error/400.html
            ErrorDocument 401 /error/401.html
            ErrorDocument 403 /error/403.html
            ErrorDocument 404 /error/404.html
            ErrorDocument 405 /error/405.html
            ErrorDocument 500 /error/500.html
            ErrorDocument 502 /error/502.html
            ErrorDocument 503 /error/503.html
    
            <IfModule mod_ssl.c>
            SSLEngine on
            SSLProtocol All -SSLv2 -SSLv3
            # SSLCipherSuite          ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
            SSLHonorCipherOrder     on
            # <IfModule mod_headers.c>
            # Header always add Strict-Transport-Security "max-age=15768000"
            # </IfModule>
            SSLCertificateFile /var/www/clients/client1/web1/ssl/mein.hostname-le.crt
            SSLCertificateKeyFile /var/www/clients/client1/web1/ssl/mein.hostname-le.key
                    SSLCertificateChainFile /var/www/clients/client1/web1/ssl/mein.hostname-le.bundle
                            SSLUseStapling on
            SSLStaplingResponderTimeout 5
            SSLStaplingReturnResponderErrors off
                    </IfModule>
    
            <Directory /var/www/mein.hostname/web>
                    # Clear PHP settings of this website
                    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                            SetHandler None
                    </FilesMatch>
                    Options +FollowSymLinks
                    AllowOverride All
                                    Require all granted
                            </Directory>
            <Directory /var/www/clients/client1/web1/web>
                    # Clear PHP settings of this website
                    <FilesMatch ".+\.ph(p[345]?|t|tml)$">
                            SetHandler None
                    </FilesMatch>
                    Options +FollowSymLinks
                    AllowOverride All
                                    Require all granted
                            </Directory>
    
    
    
    
            # suexec enabled
            <IfModule mod_suexec.c>
                SuexecUserGroup web1 client1
            </IfModule>
            <IfModule mod_fastcgi.c>
                    <Directory /var/www/clients/client1/web1/cgi-bin>
                                            Require all granted
                                        </Directory>
                    <Directory /var/www/mein.hostname/web>
                        <FilesMatch "\.php[345]?$">
                            SetHandler php-fcgi
                        </FilesMatch>
                    </Directory>
                    <Directory /var/www/clients/client1/web1/web>
                        <FilesMatch "\.php[345]?$">
                            SetHandler php-fcgi
                        </FilesMatch>
                    </Directory>
                    Action php-fcgi /php-fcgi virtual
                    Alias /php-fcgi /var/www/clients/client1/web1/cgi-bin/php-fcgi-8.8.8.8-443-mein.hostname
                    FastCgiExternalServer /var/www/clients/client1/web1/cgi-bin/php-fcgi-8.8.8.8-443-mein.hostname -idle-timeout 300 -socket /var/lib/php7.2-fpm/web1.sock -pass-header Authorization  -pass-header Content-Type
            </IfModule>
            <IfModule mod_proxy_fcgi.c>
                #ProxyPassMatch ^/(.*\.php[345]?(/.*)?)$ unix:///var/lib/php7.2-fpm/web1.sock|fcgi://localhost//var/www/clients/client1/web1/web/$1
                <Directory /var/www/clients/client1/web1/web>
                    <FilesMatch "\.php[345]?$">
                            SetHandler "proxy:unix:/var/lib/php7.2-fpm/web1.sock|fcgi://localhost"
                    </FilesMatch>
                </Directory>
                </IfModule>
    
    
    
            # add support for apache mpm_itk
            <IfModule mpm_itk_module>
                AssignUserId web1 client1
            </IfModule>
    
            <IfModule mod_dav_fs.c>
            # Do not execute PHP files in webdav directory
                <Directory /var/www/clients/client1/web1/webdav>
                    <ifModule mod_security2.c>
                        SecRuleRemoveById 960015
                        SecRuleRemoveById 960032
                    </ifModule>
                    <FilesMatch "\.ph(p3?|tml)$">
                        SetHandler None
                    </FilesMatch>
                </Directory>
                DavLockDB /var/www/clients/client1/web1/tmp/DavLock
                # DO NOT REMOVE THE COMMENTS!
                # IF YOU REMOVE THEM, WEBDAV WILL NOT WORK ANYMORE!
          # WEBDAV BEGIN
                # WEBDAV END
            </IfModule>
    
    
    
    </VirtualHost>
    
    <IfModule mod_ssl.c>
            SSLStaplingCache shmcb:/var/run/ocsp(128000)
    </IfModule>

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.
    Ich denke, also BING ich :)


    Support 24h Bereitschaft 0163 2161604 - NUR Für Kunden von SEO NW! Faires Hosting - Alternative Suchmaschinen

    #2
    in Kombination damit ( wegen Nachfrage )
    Code:
    [web1]
    
    listen = /var/lib/php7.2-fpm/web1.sock
    listen.owner = web1
    listen.group = www-data
    listen.mode = 0660
    
    user = web1
    group = client1
    
    pm = ondemand
    pm.max_children = 10
    pm.process_idle_timeout = 10s;
    pm.max_requests = 0
    
    chdir = /
    
    env[HOSTNAME] = $HOSTNAME
    env[TMP] = /var/www/clients/client1/web1/tmp
    env[TMPDIR] = /var/www/clients/client1/web1/tmp
    env[TEMP] = /var/www/clients/client1/web1/tmp
    env[PATH] = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    
    php_admin_value[open_basedir] = /var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/hostname.de/web:/srv/www/hostname.de/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom
    php_admin_value[session.save_path] = /var/www/clients/client1/web1/tmp
    php_admin_value[upload_tmp_dir] = /var/www/clients/client1/web1/tmp
    php_admin_value[sendmail_path] = "/usr/sbin/sendmail -t -i -f webmaster@hostname.de"
    h
    /etc/php/7.2/fpm/pool.d also da ist das starter Script. Jetzt kommt es eigentlich noch auf die Config an. und die ist ein wenig mächtiger, und ich kann nur die wichtigsten Sachen posten.

    zB die Frage nach APCu, oder Opcache. Das ist alles etwas umfangreicher.

    Wegen
    Code:
    pm.max_children = 10
    pm.process_idle_timeout = 10s;
    pm.max_requests = 0
    Da muss ich noch testen was die optimale Einstellung ist.

    PHP.INI
    Die Master PHP.INI ist auch schon eingerichtet. Das gehört eigentlich auch dazu, da ist es mir wichtig vom Standard abzuweichen und mehr Ressourcen für Memory Limit bspw bereitzustellen per Default.

    wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.
    Ich denke, also BING ich :)


    Support 24h Bereitschaft 0163 2161604 - NUR Für Kunden von SEO NW! Faires Hosting - Alternative Suchmaschinen

    Kommentar


      #3
      Ich weiß zwar nicht, warum Du das alles hier postest, aber egal ;) Wenns geht bitte die mpm_event.conf noch, gehört ja dazu.

      max_children von 10 ist zu klein, wenn da auch das Forum mit drauf soll. Da gibt es aber nicht viel zu testen, das kannste nur beobachten und anpassen. Schmeiß doch einfach "status" an, dann siehste was los ist und vor allem los war.

      Max_requests würde ich auf um die 500 setzen.

      Kommentar


        #4
        aja und ganz vergessen,
        mod_event

        /etc/apache2/mods-enabled
        mpm_event.conf


        die Configuration ( Standard )
        Code:
        # event MPM
        # StartServers: initial number of server processes to start
        # MinSpareThreads: minimum number of worker threads which are kept spare
        # MaxSpareThreads: maximum number of worker threads which are kept spare
        # ThreadsPerChild: constant number of worker threads in each server process
        # MaxRequestWorkers: maximum number of worker threads
        # MaxConnectionsPerChild: maximum number of requests a server process serves
        <IfModule mpm_event_module>
            StartServers             2
            MinSpareThreads         25
            MaxSpareThreads         75
            ThreadLimit             64
            ThreadsPerChild         25
            MaxRequestWorkers      150
            MaxConnectionsPerChild   0
        </IfModule>
        
        # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
        Den ganzen Mist müsste man echt mal durchrechnen. :(

        wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.
        Ich denke, also BING ich :)


        Support 24h Bereitschaft 0163 2161604 - NUR Für Kunden von SEO NW! Faires Hosting - Alternative Suchmaschinen

        Kommentar


          #5
          hallo Synonym , da war ich grade dran, hat sich überschnitten. Wegen Live Test das kommt ja erst wenn es Live ist. Vorher muss das ganze noch angepasst werden. Wir haben Montag, ne Woche habe ich Zeit.

          Auch wird Ondemand nicht überall eingesetzt. Auch HTTP2 muss manuell-halbautomatisch in die Config kommen. Wenn es aber erst da ist, ist es Update-Sicher. Ein Überschreiben ist so einfach nicht möglich, das macht dann meine Serververwaltung ISPCONFIG für mich.

          Das ganze andere muss noch austariert werden.

          Aja hier ist es noch Beta, nur mit einer eigenen Seite. Es ist noch eine Testumgebung, Live kommt es dann in einer Woche. - Vom SEO Netzwerk.

          wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.
          Ich denke, also BING ich :)


          Support 24h Bereitschaft 0163 2161604 - NUR Für Kunden von SEO NW! Faires Hosting - Alternative Suchmaschinen

          Kommentar


            #6
            Passe mit der event-Config auf, da stimmt wohl was nicht oder Du hast es per Hand geändert.

            maxrequestworkers = serverlimit * threadsperchild

            Serverlimit ist per Default 16, wenn Du das nicht geändert hast. Ergibt also per Rechnung 16 * 25 = 400. Du erlaubst dem Apache also (wenn Serverlimit nicht geändert wurde) 400 Threads. Sagst dann aber gleichzeitig, bei 150 (maxrequestworkers) ist Schluss. Das führt dann, wenn ordentlich Traffik drauf ist und die 150 erreicht wurden nur zu: "scoreboard is full"

            Und das Serverlimit zu reduzieren macht gar keinen Sinn, denn Deine 16 Cores sind mit max. 16 Servern gut bedient. Weniger würde keinen Sinn ergeben.

            Kommentar


              #7
              wie gesagt. das und andere sachen muss ich noch anpassen. Das ist mir ehrlich gesagt gar nicht aufgefallen :(

              Bis Montag steht dann aber der Server so wie er sein soll. Es ist erstmal ein Testobjekt, auch weil so vieles neu ist. Am offenen Herzen operiere ich nicht so gerne.

              Sind noch so einige Sachen nicht optimal. Ich habe aber die Woche Zeit um das zu optimieren. Danach kommen vor Samstag die "Dry" Tests, also die Testumgebung. Dann wird alles wieder auf ein Backup gemacht und dann am Montag umgezogen.

              wenn etwas möglich erscheint mach ich das, wenn das nicht klappt gehts ans unmögliche und ansonsten das undenkbare.
              Ich denke, also BING ich :)


              Support 24h Bereitschaft 0163 2161604 - NUR Für Kunden von SEO NW! Faires Hosting - Alternative Suchmaschinen

              Kommentar

              Lädt...
              X

              Das Rechtliche
              Impressum | Widerruf | Datenschutz | Disclaimer | Links