Viktor's Supportboard
Quickmenü
» Start
» Portal
» Kontakt
» Mitglieder
» Team

» Handy-Ansicht


Usermenü

» Registrieren

Login
Benutzername:
Passwort:

(Passwort vergessen?)

Database
» Database

Lizenzshop/Verwaltung
» Lizenzshop/Verwaltung


Allgemeines
» Themen der letzen 24 Stunden
» Beiträge von Heute
» Aktuelle Umfragen
» Themen als gelesen markieren
» Themen ohne Antwort

» F.A.Q
» Regeln
» Impressum
» Datenschutzerklärung

» Linkliste
» Partner
» Statistik

Kostenplichtige Hacks
» VG-Lizenz
» VG-Fotowettbewerb
» VG-Kontaktanzeige
» VG-Literatur-Verwaltung
» VGTreffen/Dater
» VGMusik/Video

Mein Hacks
» VGUser-Leaflet-Map
» VGUser-Google-Map
» VGClub-Map-Google
» User-Map
» Club-Map
» User-Locator
» Club-Locator
» Mitglieder Bilderupload
» VGOnlineList
» Teamspeak Onlineanzeige

Meine Banner
» Meine Banner

Statistik
Beiträge: 138.595 (Täglich: 23,58 )
Themen: 16.150
Mitglieder: 13.153
Neuestes Mitglied: GuiK.
Ausl. d. letzten Minute: 21%
Ausl. d. letzten 5 Minuten: 32%
Ausl. d. letzten 15 Minuten: 39%
Freier Webspace: 1.96 TB
PHP-Version: 7.1.11

Spenden

Partner
Mein Supportboard

MySQLDumper

Forum für Angehörige und Freunde von Krebspatienten

Wetter-Board

Make your Webserver

ABC-des Essens

IC-Netforum

ultimate-funultimate-fun

Steinadler-Bastelstübchen

Webseitenschutz

Werben

Viktor's Supportboard » Programmieren » Servertechnik » So für alle die IspCP im Einsatz haben » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen So für alle die IspCP im Einsatz haben
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
mad max   Zeige mad max auf Karte mad max ist männlich
wBB2-User


images/avatars/avatar-562.gif

Zeige mad max auf Karte
Dabei seit: 17.07.2006
Beiträge: 48
0 Filebase-Einträge
Alter: 46 Jahre
wBB-Version: wBB2.3


Mitglied bewerten

Level: 29 [?]
Erfahrungspunkte: 230.928
Nächster Level: 242.754

11.826 Erfahrungspunkt(e) für den nächsten Levelanstieg



Daumen hoch! So für alle die IspCP im Einsatz haben Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Ende der Seite springen Zum Anfang der Seite springen

Hier mal eine kleine Erweiterung damit der Apache2 entlastet wird. Leider wird IspCP nur von Apache2 unterstützt, obwohl es mittlerweile bessere Lösungen gibt als den Speicherhungrigen Apache2.
Lighttpd,Nginx zb sehr gute Alternativen zu Apache2

Hier mal ein Howto wie ich Nginx und Apache2 vereint habe. Nginx ist für den statischen und Apache2 für den dynamischen Teil zuständig.

Es sei aber angemerkt das dieses HOWTO noch nicht vollständig ausgereift ist. Auf jeden Fall wäre es nett, wenn Leute die sich mit ispCP auskennen an der Fertigstellung/optimierung mitwirken könnten.


Ich gehe davon aus das ein fertig eingerichtetes und lauffähiges ispCP System besteht. Als IP verwende ich diese 192.168.1.1 diese muß natürlich bei jedem durch seine eigene ersetzt werden.

Den Apache habe ich erstmal auf Port81 gelegt.Wir editieren /etc/apache2/ports.conf

code:
1:
Listen 192.168.1.1:81
Sämtliche bereits angelegten virtual hosts müssen ebenfalls angepasst werden. Ich habe die Datei /etc/apache2/sites-available/ispcp.conf mit einem Editor geöffnet. Dort alle angeleten v-hosts geändert dh. Port 80 durch 81 ersetzt.
Hier mal ein kleiner Auszug muß natülich bei jedem schon angelgtem v-host durchgeführt werden.

code:
1:
2:
3:
4:
5:
6:
7:
# httpd [192.168.1.1] virtual host entry BEGIN.

NameVirtualHost 192.168.1.1:81

# httpd [{DMN_GRP}] dmn group entry BEGIN.
# httpd [{DMN_GRP}] dmn group entry END.
# httpd [waqui2000.halle17.de] dmn group entry BEGIN.
evtl. gibt es ne möglichkeit dieses einfacher zu lösen wenn ja bitte hier posten.

So jetzt installieren wir nginx:

code:
1:
apt-get install nginx
Jetzt die nginx.conf Datei zu finden etc/nginx/ nginx.conf mit dieser Datei ersetzen:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
user www-data;
worker_processes 2;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    server_names_hash_bucket_size   64;
    include       /etc/nginx/mime.types;
    default_type  application/octet-stream;

    access_log    /var/log/nginx/access.log;

log_format  main  '$remote_addr - $remote_user [$time_local] $status '
                      '"$request" $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "http_x_forwarded_for"';
    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;
    
    gzip  on;
server {
    listen       192.168.1.1:80 default;
    #server_name  halle17.de;
    access_log /var/log/nginx/default.access.log  main;

    location / {
        proxy_pass http://192.168.1.1:81;
        
   }
}

    include /etc/nginx/proxy.conf;
    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}
Wie ihr seht läuft nginx auf 80 und apache auf 81!!

Dann erstellen wir eine neue Datei Namens"proxy.conf" unter /etc/nginx/
Mit folgendem Inhalt:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
proxy_redirect          off;
proxy_set_header        Host            $host;
proxy_set_header        X-Real-IP       $remote_addr;
proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size    10m;
client_body_buffer_size 128k;
proxy_connect_timeout   90;
proxy_send_timeout      90;
proxy_read_timeout      90;
proxy_buffers           32 4k;
Dieser Teil der oben geposteten nginx.conf

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
server {
    listen       XXX.XXX.XXX.XXX:80 default;
    server_name  _;
    access_log /var/log/nginx/default.access.log main;

    location / {
        proxy_pass http://192.168.1.1:81;
        include /etc/nginx/proxy.conf;
   }
}
Wird der default Eintrag dh. ist bei nginx kein v-host angelegt wird gnadenlos alles an den apache weitergeleitet!!

Um jetzt dem nginx mitzuteilen welche v-host auf dem Server laufen. Werden so habe ich es zur Zeit am laufen pro v-host eine Datei angelegt.
In diesem Verzeichniss werden die Dateien erstellt "/etc/nginx/sites-enabled"
Der Name spielt keine rolle um den Überblick zu behalten, habe ich den Domainnamen genommen.
Der Inhalt dieser Datei/en sieht so aus:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
server {
    listen 192.168.1.1:80;
    server_name  www.xxxxxxx.de xxxxxxx.de *.xxxxxxxxx.de;
 
    location / {
        proxy_pass http://192.168.1.1:81;
        include /etc/nginx/proxy.conf;
    }
 
    location ~* ^.+.(jpe?g|gif|png|ico|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|ppt|txt|tar|mid|midi|wav|bmp|rtf|js|swf|avi|mp3)$ {
        expires 30d;
        root /var/www/xxxxxx/xxxxxx.de/htdocs;
    }
}
Server Name und root muß natürlich angepasst werden!!!

Jetzt starten wir Apache neu:

code:
1:
/etc/init.d/apache2 restart
Jetzt noch den Nginx starten

code:
1:
/etc/init.d/nginx start
code:
1:
/usr/local/nginx/sbin/nginx -c /etc/nginx/nginx.conf
Ein Nginx reload geht so:

code:
1:
/etc/init.d/nginx restart
code:
1:
kill -HUP `cat /var/run/nginx.pid`
So weit so gut bis dorthin lief auf anhieb alles Problemlos. Nur mußte ich feststellen das in den Apache Logs falsche ober besser gesagt nur noch die ip 192.168.1.1 geloggt wird und nicht mehr die tatsächliche ip. Aber auch dafür habe ich eine Lösung gefunden.

mod-rpaf war die Lösung

code:
1:
apt-get libapache2-mod-rpaf
Jetzt mußten nochmal die v-host configs von ispCP editiert werden.
Also nochmal /etc/apache2/sites-available/ispcp.conf mit einem editor geöffnet und bei jedem vhost diesen Teil hinzugefügt:

code:
1:
2:
3:
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.1
Sieht dann so aus:

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
# httpd [192.168.1.1] virtual host entry BEGIN.

NameVirtualHost 192.168.1.1:81



# httpd [{DMN_GRP}] dmn group entry BEGIN.
# httpd [{DMN_GRP}] dmn group entry END.
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.1

<IfModule mod_cband.c>
    <CBandUser waqui2000.halle17.de>
        # CBandUserLimit 0Mi
        # CBandUserScoreboard /var/www/scoreboards/waqui2000.halle17.de
        # CBandUserPeriod 4W
        # CBandUserPeriodSlice 1W
        # CBandUserExceededURL http://xxxxxxxxxxx/errors/bw_exceeded.html
    </CBandUser>
</IfModule>
So das war es alles läuft super schneller und der Serverload ist deutlich geringer geworden.

Um das jetzt weitgehend zu automatisieren dh wenn eine neue Domain angelegt wird habe ich folgende Templates editiert.

/etc/ispcp/apache/parts

-dmn_entry.tpl
-sub_entry.tpl
-vh_entry.tpl


code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
<VirtualHost {DMN_IP}:81>

    <IfModule suexec_module>
           SuexecUserGroup {SUEXEC_USER} {SUEXEC_GROUP}
    </IfModule>

    ServerAdmin     webmaster@{DMN_NAME}
    DocumentRoot    {WWW_DIR}/{DMN_NAME}/htdocs

    ServerName      {DMN_NAME}
    ServerAlias     www.{DMN_NAME} {DMN_NAME} *.{DMN_NAME}

    Alias /errors   {WWW_DIR}/{DMN_NAME}/errors/

    RedirectMatch permanent ^/ftp([\/]?)        http://{BASE_SERVER_VHOST}/ftp/
    RedirectMatch permanent ^/pma([\/]?)        http://{BASE_SERVER_VHOST}/pma/
    RedirectMatch permanent ^/webmail([\/]?)    http://{BASE_SERVER_VHOST}/webmail/

    ErrorDocument 401 /errors/401.html
    ErrorDocument 403 /errors/403.html
    ErrorDocument 404 /errors/404.html
    ErrorDocument 500 /errors/500.html
    ErrorDocument 503 /errors/503.html

RPAFenable On
RPAFsethostname On
RPAFproxy_ips {DMN_IP}

    <IfModule mod_cband.c>
        CBandUser {DMN_GRP}
    </IfModule>

    # httpd awstats support BEGIN.
    # httpd awstats support END.

    # httpd dmn entry cgi support BEGIN.
    # httpd dmn entry cgi support END.

    <Directory {WWW_DIR}/{DMN_NAME}/htdocs>
        # httpd dmn entry PHP support BEGIN.
        # httpd dmn entry PHP support END.
        Options -Indexes Includes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    # httpd dmn entry PHP2 support BEGIN.
    # httpd dmn entry PHP2 support END.

    Include {CUSTOM_SITES_CONFIG_DIR}/{DMN_NAME}.conf

</VirtualHost>
code:
1:
2:
3:
4:
5:
6:
7:
NameVirtualHost {SUB_IP}:81

# httpd [{DMN_GRP}] dmn group entry BEGIN.
# httpd [{DMN_GRP}] dmn group entry END.

# httpd [{ALS_NAME}] als entry BEGIN.
# httpd [{ALS_NAME}] als entry END.
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
<VirtualHost {SUB_IP}:81>

    #
    #User {SUEXEC_USER}
    #Group {SUEXEC_GROUP}
    #

    <IfModule suexec_module>
           SuexecUserGroup {SUEXEC_USER} {SUEXEC_GROUP}
    </IfModule>

    ServerAdmin     webmaster@{DMN_NAME}
    DocumentRoot    {WWW_DIR}/{DMN_NAME}{MOUNT_POINT}/htdocs

    ServerName      {SUB_NAME}
    ServerAlias     www.{SUB_NAME} {SUB_NAME} *.{SUB_NAME}

    Alias /errors {WWW_DIR}/{DMN_NAME}/errors/

    ErrorDocument 401 /errors/401.html
    ErrorDocument 403 /errors/403.html
    ErrorDocument 404 /errors/404.html
    ErrorDocument 500 /errors/500.html
    ErrorDocument 503 /errors/503.html

RPAFenable On
RPAFsethostname On
RPAFproxy_ips {SUB_IP}

    <IfModule mod_cband.c>
        CBandUser {DMN_GRP}
    </IfModule>

    # httpd sub entry cgi support BEGIN.
    # httpd sub entry cgi support END.

    <Directory {WWW_DIR}/{DMN_NAME}{MOUNT_POINT}/htdocs>
        # httpd sub entry PHP support BEGIN.
        # httpd sub entry PHP support END.
        Options -Indexes Includes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        Allow from all
    </Directory>

    # httpd sub entry PHP2 support BEGIN.
    # httpd sub entry PHP2 support END.

    Include {CUSTOM_SITES_CONFIG_DIR}/{SUB_NAME}.conf

</VirtualHost>
Jetzt müßte man es nur noch hinbekommen das auch gleichzeitig hier /etc/nginx/sites-enabled/" eine neue Datei erstellt wird mit dem neuen v-host wie er oben beschrieben ist. Dann bleibt nur noch der reload von nginx damit die neue Datei geladen wird.

Achtung "libapache2-mod-rpaf " gibt es nur für Lenny!! Für alle die Etch verwenden folgt dieser Teil:

code:
1:
cd /usr/local/src
code:
1:
wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
code:
1:
tar xzf mod_rpaf-0.6.tar.gz
code:
1:
cd mod_rpaf-0.6
Compiling rpaf module:

code:
1:
nano /usr/local/src/mod_rpaf-0.6/makefile
Change APXS=$(shell which apxs) to APXS=/usr/sbin/apxs.

code:
1:
make rpaf-2.0 && make install-2.0
Diesen Teil natürlich nicht vergessen ist ja ich HOWTO beschrieben:

code:
1:
2:
3:
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 192.168.1.1
So das ganze läuft jetzt seit dem 15.01.2009 auf meinem Produktivserver ohne Probleme. Allerdings müssen die Änderungen noch per Hand erledigt werden wie zb die V-Host Einträge für den Nginx.

mfg
Mad Max

__________________
http://www.cow.halle17.de – Das Arcade Fun Board
17.03.2009 20:55 mad max ist offline E-Mail an mad max senden Homepage von mad max Beiträge von mad max suchen Nehmen Sie mad max in Ihre Freundesliste auf Germany
Viktor   Zeige Viktor auf Karte Viktor ist männlich
Administrator


images/avatars/avatar-15762.jpg

Zeige Viktor auf Karte
Dabei seit: 15.08.2003
Beiträge: 29.913
363 Filebase-Einträge
Alter: 62 Jahre
Herkunft: NRW
wBB-Version: wBB2.3
PHP-Version: 7.1.11
MySQL-Version: 5.5.59-0+deb8u1
Wo bist du gehostet?: eigener Server

Bewertung: 
279 Bewertung(en) - Durchschnitt: 9,47

Level: 68 [?]
Erfahrungspunkte: 175.829.979
Nächster Level: 176.283.333

453.354 Erfahrungspunkt(e) für den nächsten Levelanstieg


Der User ist vom 15.09.2019
bis zum 22.09.2019 abwesend. Begründung: Urlaub
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Ende der Seite springen Zum Anfang der Seite springen

Hallo,

wow das hört sich nicht schlecht an. geschockt geschockt

Bei mir laufen alle Domains auf einer eigenen IP. fröhlich

Wie kann ich das denn dann machen. Augen rollen

Der Apache lauscht ja auf allen IP's. fröhlich

Gruß
Viktor Augenzwinkern

__________________
Ein kluger Mann widerspricht keiner Frau. Er wartet, bis sie es selbst tut.


... beim Käfer (WBB2) konnte man noch selber schrauben,
beim neuen Golf (WBB3) muß man fast schon in die Werkstatt wenn man das "Wischwasser" nachfüllen muss!


Da fast keiner mehr hier Postet gibt es ab sofort keinen Support mehr per PN.

17.03.2009 21:07 Viktor ist abwesend
vom 15.09.2019 bis 22.09.2019
Urlaub E-Mail an Viktor senden Homepage von Viktor Beiträge von Viktor suchen Nehmen Sie Viktor in Ihre Freundesliste auf Germany
mad max   Zeige mad max auf Karte mad max ist männlich
wBB2-User


images/avatars/avatar-562.gif

Zeige mad max auf Karte
Dabei seit: 17.07.2006
Beiträge: 48
0 Filebase-Einträge
Alter: 46 Jahre
wBB-Version: wBB2.3


Mitglied bewerten

Level: 29 [?]
Erfahrungspunkte: 230.928
Nächster Level: 242.754

11.826 Erfahrungspunkt(e) für den nächsten Levelanstieg

Themenstarter Thema begonnen von mad max


Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Ende der Seite springen Zum Anfang der Seite springen

Damit nginx auf allen ip´s lauscht mußt du den Eintrag in der nginx.conf ändern.

code:
1:
server {     listen       192.168.1.1:80 default;


muß in

code:
1:
server {    listen 80 default;


geändert werden so sollte nginx auf allen ip´s lauschen


mfg

__________________
http://www.cow.halle17.de – Das Arcade Fun Board
17.03.2009 23:35 mad max ist offline E-Mail an mad max senden Homepage von mad max Beiträge von mad max suchen Nehmen Sie mad max in Ihre Freundesliste auf Germany
Viktor   Zeige Viktor auf Karte Viktor ist männlich
Administrator


images/avatars/avatar-15762.jpg

Zeige Viktor auf Karte
Dabei seit: 15.08.2003
Beiträge: 29.913
363 Filebase-Einträge
Alter: 62 Jahre
Herkunft: NRW
wBB-Version: wBB2.3
PHP-Version: 7.1.11
MySQL-Version: 5.5.59-0+deb8u1
Wo bist du gehostet?: eigener Server

Bewertung: 
279 Bewertung(en) - Durchschnitt: 9,47

Level: 68 [?]
Erfahrungspunkte: 175.829.979
Nächster Level: 176.283.333

453.354 Erfahrungspunkt(e) für den nächsten Levelanstieg


Der User ist vom 15.09.2019
bis zum 22.09.2019 abwesend. Begründung: Urlaub
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Ende der Seite springen Zum Anfang der Seite springen

Hallo,

Danke für die Info. Freude

Ich werde es mal unter meinem VMWare mal testen. fröhlich

Danke
Viktor Augenzwinkern

__________________
Ein kluger Mann widerspricht keiner Frau. Er wartet, bis sie es selbst tut.


... beim Käfer (WBB2) konnte man noch selber schrauben,
beim neuen Golf (WBB3) muß man fast schon in die Werkstatt wenn man das "Wischwasser" nachfüllen muss!


Da fast keiner mehr hier Postet gibt es ab sofort keinen Support mehr per PN.

18.03.2009 20:13 Viktor ist abwesend
vom 15.09.2019 bis 22.09.2019
Urlaub E-Mail an Viktor senden Homepage von Viktor Beiträge von Viktor suchen Nehmen Sie Viktor in Ihre Freundesliste auf Germany
Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
Viktor's Supportboard » Programmieren » Servertechnik » So für alle die IspCP im Einsatz haben

Impressum | Datenschutz | Fast-Index

Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab® GmbH Design © Tine

Valid XHTML 1.0! Valid CSS! Die letzten Themen Die letzten Beiträge © für wbb2 by Bandy & cback.de Geblockte Angriffe: 5.264
Seo Sidemap Powert by 2Clubradio.de
Viktor's Supportboard, ist " Online " seit 16 Jahren, 34 Tage, 1 Stunden, 5 Minuten und 42 Sekunden