open:it:apache
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| open:it:apache [2024/08/15 15:19] – Externe Bearbeitung 127.0.0.1 | open:it:apache [2025/08/05 20:52] (aktuell) – [DNS-Einstellungen] k@i | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ====== Apache Web-Server ====== | ====== Apache Web-Server ====== | ||
| - | OS: Debian 11 | ||
| ===== Vorbereitung ===== | ===== Vorbereitung ===== | ||
| Zeile 7: | Zeile 6: | ||
| - [[open: | - [[open: | ||
| - [[open: | - [[open: | ||
| + | - [[open: | ||
| * https:// | * https:// | ||
| Zeile 17: | Zeile 17: | ||
| sudo systemctl status apache2 | sudo systemctl status apache2 | ||
| - | [[open: | ||
| - | Firewall-Freigabe für Webseiten | ||
| - | sudo ufw allow 80/tcp | ||
| - | Firewall-Freigabe für Webseiten verschlüsselt | ||
| - | sudo ufw allow 443/tcp | ||
| Verzeichnis für Webseiten anlegen. | Verzeichnis für Webseiten anlegen. | ||
| sudo mkdir / | sudo mkdir / | ||
| Zeile 29: | Zeile 24: | ||
| Den Main-User in die Gruppe www-data aufnehmen, damit er Schreibrechte im Bereich der HTML-Seiten hat. | Den Main-User in die Gruppe www-data aufnehmen, damit er Schreibrechte im Bereich der HTML-Seiten hat. | ||
| sudo usermod -aG www-data < | sudo usermod -aG www-data < | ||
| + | |||
| + | ==== Firewall ==== | ||
| + | [[open: | ||
| + | Freigabe für Webseiten | ||
| + | sudo ufw allow 80/tcp | ||
| + | Firewall-Freigabe für verschlüsselte Webseiten | ||
| + | sudo ufw allow 443/tcp | ||
| + | |||
| + | |||
| ===== FTP-Zugang ===== | ===== FTP-Zugang ===== | ||
| sudo apt install vsftpd | sudo apt install vsftpd | ||
| Zeile 160: | Zeile 164: | ||
| </ | </ | ||
| + | ===== Proxy-Server ===== | ||
| + | Erweiterungen installieren | ||
| + | sudo a2enmod proxy proxy_ajp proxy_http rewrite deflate headers proxy_balancer proxy_connect proxy_html ssl | ||
| + | |||
| + | Konfiguration mit SSL, hier für eine Subdomain, siehe auch [[open: | ||
| + | sudo nano / | ||
| + | |||
| + | < | ||
| + | < | ||
| + | ServerName calibre.< | ||
| + | ... | ||
| + | ... | ||
| + | ProxyPass | ||
| + | ProxyPassReverse / http:// | ||
| + | ... | ||
| + | ... | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | DocumentRoot kann entfernt oder deaktiviert (#) werden | ||
| + | |||
| + | sudo apachectl configtest | ||
| + | |||
| + | sudo systemctl restart apache2 | ||
| + | |||
| + | Anschließend kann die Firewall für den Port 8080 (sofern verwendet) wieder deaktiviert werden, da der Aufruf nun über den Domainnamen bzw. Subdomain erfolgt. Siehe auch [[open: | ||
| ===== SSL-Zertifikate ===== | ===== SSL-Zertifikate ===== | ||
| - | https:// | + | [[https:// |
| + | [[https:// | ||
| ==== DNS-Einstellungen ==== | ==== DNS-Einstellungen ==== | ||
| - | Die DNS-Zeiger der Domain(s) | + | Siehe auch [[dns|DNS-Einstellungen]] \\ |
| + | |||
| + | Die Web-Adressen müssen zuvor beim Provider auf den Server umgeleitet werden. \\ | ||
| + | Das erfolgt über die DNS-Zeiger der Domain(s): | ||
| * A -> @ -> IPV4-Adresse des Servers | * A -> @ -> IPV4-Adresse des Servers | ||
| * A -> www -> IPV4-Adresse des Servers (sofern www gewünscht) | * A -> www -> IPV4-Adresse des Servers (sofern www gewünscht) | ||
| - | Werden | + | Sollen zusätzlich |
| * A -> * -> IPV4-Adresse des Servers | * A -> * -> IPV4-Adresse des Servers | ||
| + | In diesem Beispiel werden durch das (zweite) * alle Subdomains umgeleitet.\\ | ||
| + | Es ist natürlich auch möglich, einzelne Subdomains gezielt auf einen Server umzuleiten. So können dann verschiedene Subdomains auf unterschiedliche Servern geleitet werden. \\ | ||
| + | Beispiel für die Subdomain " | ||
| + | * A -> sub -> IPV4-Adresse des Servers | ||
| ==== Let' | ==== Let' | ||
| Zeile 217: | Zeile 256: | ||
| SSL-Zertifikat registrieren | SSL-Zertifikat registrieren | ||
| sudo certbot --apache | sudo certbot --apache | ||
| - | |||
| - | ===== PHP ===== | ||
| - | |||
| - | ==== Ubuntu ==== | ||
| - | |||
| - | https:// | ||
| - | |||
| - | ==== Debian ==== | ||
| - | |||
| - | Der Apache-Server kann parallel mit unterschiedlichen PHP-Versionen betrieben und eine Version davon einer Domain explizit zugewiesen werden. \\ | ||
| - | Quelle: https:// | ||
| - | |||
| - | Benötigte Pakete wie curl installieren | ||
| - | sudo apt-get -y install apt-transport-https lsb-release ca-certificates curl | ||
| - | Mit dem sury PHP Repository kommunizieren > Schlüssel herunterladen und installieren | ||
| - | sudo curl -sSL -o / | ||
| - | sury PHP Repository zur Source-List hinzufügen | ||
| - | sudo sh -c 'echo "deb https:// | ||
| - | |||
| - | Paketlisten neu einlesen und aktualisieren. | ||
| - | sudo apt-get update | ||
| - | |||
| - | PHP-Versionen installieren (je nach Bedarf) | ||
| - | sudo apt install php7.4 php7.4-bcmath php7.4-cli php7.4-common php7.4-curl php7.4-dev php7.4-fpm php7.4-gd php7.4-imap php7.4-intl php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-readline php7.4-soap php7.4-sqlite3 php7.4-tidy php7.4-xsl php7.4-zip | ||
| - | |||
| - | sudo apt install php8.0 php8.0-bcmath php8.0-cli php8.0-common php8.0-curl php8.0-dev php8.0-fpm php8.0-gd php8.0-imap php8.0-intl php8.0-mbstring php8.0-mysql php8.0-opcache php8.0-readline php8.0-soap php8.0-sqlite3 php8.0-tidy php8.0-xml php8.0-xsl php8.0-zip | ||
| - | |||
| - | sudo apt install php8.2 php8.2-bcmath php8.2-cli php8.2-common php8.2-curl php8.2-dev php8.2-fpm php8.2-gd php8.2-imap php8.2-intl php8.2-mbstring php8.2-mysql php8.2-opcache php8.2-readline php8.2-soap php8.2-sqlite3 php8.2-tidy php8.2-xml php8.2-xsl php8.2-zip | ||
| - | |||
| - | Check Installiert - sollte bei allen Versionen klappen | ||
| - | sudo systemctl status php7.4-fpm.service | ||
| - | |||
| - | Apache-Module zum Umgang mit den PHP-FPM Installationen | ||
| - | sudo apt-get install libapache2-mod-fcgid php-fpm | ||
| - | |||
| - | sudo a2enmod actions alias fcgid proxy_fcgi | ||
| - | |||
| - | Version auswählen (Server intern) | ||
| - | sudo update-alternatives --config php | ||
| - | |||
| - | Auswahl Basisversion (Server intern) | ||
| - | sudo update-alternatives --config php-fpm.sock | ||
| - | |||
| - | Standartversion Apache festlegen -> hier nur eine Version, die anderen, sofern aktiviert, mit a2disconf abschalten | ||
| - | sudo a2enconf php8.2-fpm.conf | ||
| - | |||
| - | sudo systemctl reload apache2 | ||
| - | | ||
| - | Nur wenn eine Domain/ | ||
| - | sudo nano / | ||
| - | Zum Beispiel: | ||
| - | Include / | ||
| - | |||
| - | sudo systemctl reload apache2 | ||
| - | |||
| - | Check PHP-Version auf Webseite | ||
| - | sudo nano / | ||
| - | |||
| - | <? | ||
| - | phpinfo(); | ||
| - | ?> | ||
| - | | ||
open/it/apache.1723727971.txt.gz · Zuletzt geändert: von 127.0.0.1
