Wissensdatenbank
1000 FAQ, 500 Anleitungen und Lernvideos. Hier gibt es nur Lösungen!
In diesem Leitfaden wird erlÀutert, wie ohne das Modul gearbeitet werden kann. PECL SSH2 client
nicht verfĂŒgbar in Webhosting und Cloud-Server Infomaniak, stattdessen mit der Bibliothek phpseclib
, das in nativer PHP funktioniert, ohne dass eine spezifische Erweiterung erforderlich ist.
PrÀambel
- Verwendung von
PECL SSH2 client
Fehler beim TypNo compatible key exchange algorithms found
oderUnable to exchange encryption keys
in seiner neuesten Version verfĂŒgbar. Phpseclib
erlaubt:- SSH-Authentifizierung per Passwort oder privaten SchlĂŒssel.
- Remote-Befehle ausfĂŒhren.
- Die Ăbertragung von gesicherten Dateien (SFTP).
- SSH-SchlĂŒssel-Management.
phpseclib verwenden
Um eine SSH-Verbindung in ein PHP-Skript zu integrieren, verwenden Sie phpseclib
wie folgt:
use phpseclib3\Net\SSH2;
use phpseclib3\Crypt\PublicKeyLoader;
$ssh = new SSH2('domain.xyz');
$key = PublicKeyLoader::load(file_get_contents('/path/to/private_key'));
if (!$ssh->login('utilisateur', $key)) {
exit('Authentication Failed');
}
echo $ssh->exec('ls -la');
Infomaniak fĂŒhrt keine Sicherungen der VPS Cloud / VPS Lite durch.
Sie können dennochâŠ
- ⊠ein Snapshot des Servers erstellen (Sicherung nicht automatisiert)
- ⊠den Server auf Swiss Backup sichern (Sicherung automatisiert)
Dieser Leitfaden hilft Ihnen beispielsweise, wenn Sie ein Paket wie pymysql
bereitstellen möchten und dieses eine höhere Python-Version als die auf Ihrem Hosting angebotene erfordert.
Vorbemerkung
- Anaconda ist eine freie und Open-Source-Distribution der Programmiersprache Python. Diese Distribution zielt darauf ab, die Verwaltung von Paketen und den Einsatz zu vereinfachen.
- Es wird empfohlen, conda zu verwenden, das mit einer aktuellen Version von Python geliefert wird und sich im Benutzerbereich installiert, sodass es zu keinen Konflikten mit dem System-Python kommt (wie in einer virtuellen Umgebung, die immer eine Systeminstallation der gewĂŒnschten Version erfordert).
- Nehmen Sie die offizielle Dokumentation zur Kenntnis.
â ïž FĂŒr zusĂ€tzliche Hilfe kontaktieren Sie einen Partner oder starten Sie kostenlos eine Ausschreibung â erfahren Sie auch mehr ĂŒber die Rolle des Hosters.
Installer herunterladen
uid165116@od-12345:~$ wget https://repo.anaconda.com/miniconda/Miniconda3-py37_4.10.3-Linux-x86_64.sh
--2021-07-28 18:21:10-- https://repo.anaconda.com/miniconda/Miniconda3-py37_4.10.3-Linux-x86_64.sh
Resolving repo.anaconda.com (repo.anaconda.com)... 2606:4700::6810:8303, 2606:4700::6810:8203, 104.16.131.3, ...
Connecting to repo.anaconda.com (repo.anaconda.com)|2606:4700::6810:8303|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 89026327 (85M) [application/x-sh]
Saving to: âMiniconda3-py37_4.10.3-Linux-x86_64.shâ
Miniconda3-py37_4.10.3-Linux-x86_64.sh 100% [==============================================>] 84.90M 203MB/s in 0.4s
18:21:11 (100 MB/s) - âMiniconda3-py37_4.10.3-Linux-x86_64.shâ saved [89026327/89026327]
Die PrĂŒfsumme ĂŒberprĂŒfen
uid165116@od-12345:~$ test $(md5sum Miniconda3-py37_4.10.3-Linux-x86_64.sh | awk '{print $1}') == "9f186c1d86c266acc47dbc1603f0e2ed" && echo "OK"
OK
Installation starten
uid165116@od-12345:~$ bash Miniconda3-py37_4.10.3-Linux-x86_64.sh -b
PREFIX=/home/clients/fc84cbbf6dcbd6dd76b15d3e56c1789f/miniconda3
Unpacking payload ...
Collecting package metadata (current_repodata.json): done
Solving environment: done
## Package Plan ##
environment location: /home/clients/fc84cbbf6dcbd6dd76b15d3e56c1789f/miniconda3
added / updated specs:
- _libgcc_mutex==0.1=main
- _openmp_mutex==4.5=1_gnu
- brotlipy==0.7.0=py37h27cfd23_1003
- ca-certificates==2021.7.5=h06a4308_1
- certifi==2021.5.30=py37h06a4308_0
- cffi==1.14.6=py37h400218f_0
- chardet==4.0.0=py37h06a4308_1003
- conda-package-handling==1.7.3=py37h27cfd23_1
- conda==4.10.3=py37h06a4308_0
- cryptography==3.4.7=py37hd23ed53_0
- idna==2.10=pyhd3eb1b0_0
- ld_impl_linux-64==2.35.1=h7274673_9
- libffi==3.3=he6710b0_2
- libgcc-ng==9.3.0=h5101ec6_17
- libgomp==9.3.0=h5101ec6_17
- libstdcxx-ng==9.3.0=hd4cf53a_17
- ncurses==6.2=he6710b0_1
- openssl==1.1.1k=h27cfd23_0
- pip==21.1.3=py37h06a4308_0
- pycosat==0.6.3=py37h27cfd23_0
- pycparser==2.20=py_2
- pyopenssl==20.0.1=pyhd3eb1b0_1
- pysocks==1.7.1=py37_1
- python==3.7.10=h12debd9_4
- readline==8.1=h27cfd23_0
- requests==2.25.1=pyhd3eb1b0_0
- ruamel_yaml==0.15.100=py37h27cfd23_0
- setuptools==52.0.0=py37h06a4308_0
- six==1.16.0=pyhd3eb1b0_0
- sqlite==3.36.0=hc218d9a_0
- tk==8.6.10=hbc83047_0
- tqdm==4.61.2=pyhd3eb1b0_1
- urllib3==1.26.6=pyhd3eb1b0_1
- wheel==0.36.2=pyhd3eb1b0_0
- xz==5.2.5=h7b6447c_0
- yaml==0.2.5=h7b6447c_0
- zlib==1.2.11=h7b6447c_3
The following NEW packages will be INSTALLED:
_libgcc_mutex pkgs/main/linux-64::_libgcc_mutex-0.1-main
_openmp_mutex pkgs/main/linux-64::_openmp_mutex-4.5-1_gnu
brotlipy pkgs/main/linux-64::brotlipy-0.7.0-py37h27cfd23_1003
ca-certificates pkgs/main/linux-64::ca-certificates-2021.7.5-h06a4308_1
certifi pkgs/main/linux-64::certifi-2021.5.30-py37h06a4308_0
cffi pkgs/main/linux-64::cffi-1.14.6-py37h400218f_0
chardet pkgs/main/linux-64::chardet-4.0.0-py37h06a4308_1003
conda pkgs/main/linux-64::conda-4.10.3-py37h06a4308_0
conda-package-han~ pkgs/main/linux-64::conda-package-handling-1.7.3-py37h27cfd23_1
cryptography pkgs/main/linux-64::cryptography-3.4.7-py37hd23ed53_0
idna pkgs/main/noarch::idna-2.10-pyhd3eb1b0_0
ld_impl_linux-64 pkgs/main/linux-64::ld_impl_linux-64-2.35.1-h7274673_9
libffi pkgs/main/linux-64::libffi-3.3-he6710b0_2
libgcc-ng pkgs/main/linux-64::libgcc-ng-9.3.0-h5101ec6_17
libgomp pkgs/main/linux-64::libgomp-9.3.0-h5101ec6_17
libstdcxx-ng pkgs/main/linux-64::libstdcxx-ng-9.3.0-hd4cf53a_17
ncurses pkgs/main/linux-64::ncurses-6.2-he6710b0_1
openssl pkgs/main/linux-64::openssl-1.1.1k-h27cfd23_0
pip pkgs/main/linux-64::pip-21.1.3-py37h06a4308_0
pycosat pkgs/main/linux-64::pycosat-0.6.3-py37h27cfd23_0
pycparser pkgs/main/noarch::pycparser-2.20-py_2
pyopenssl pkgs/main/noarch::pyopenssl-20.0.1-pyhd3eb1b0_1
pysocks pkgs/main/linux-64::pysocks-1.7.1-py37_1
python pkgs/main/linux-64::python-3.7.10-h12debd9_4
readline pkgs/main/linux-64::readline-8.1-h27cfd23_0
requests pkgs/main/noarch::requests-2.25.1-pyhd3eb1b0_0
ruamel_yaml pkgs/main/linux-64::ruamel_yaml-0.15.100-py37h27cfd23_0
setuptools pkgs/main/linux-64::setuptools-52.0.0-py37h06a4308_0
six pkgs/main/noarch::six-1.16.0-pyhd3eb1b0_0
sqlite pkgs/main/linux-64::sqlite-3.36.0-hc218d9a_0
tk pkgs/main/linux-64::tk-8.6.10-hbc83047_0
tqdm pkgs/main/noarch::tqdm-4.61.2-pyhd3eb1b0_1
urllib3 pkgs/main/noarch::urllib3-1.26.6-pyhd3eb1b0_1
wheel pkgs/main/noarch::wheel-0.36.2-pyhd3eb1b0_0
xz pkgs/main/linux-64::xz-5.2.5-h7b6447c_0
yaml pkgs/main/linux-64::yaml-0.2.5-h7b6447c_0
zlib pkgs/main/linux-64::zlib-1.2.11-h7b6447c_3
Preparing transaction: done
Executing transaction: done
installation finished.
Conda starten
uid165116@od-12345:~$ source <(~/miniconda3/bin/conda shell.bash hook)
pymysql installieren (zum Beispiel)
(base) uid165116@od-12345:~$ python3 -V
Python 3.7.10
(base) uid165116@od-12345:~$ pip3 install pymysql --user
Collecting pymysql
Downloading PyMySQL-1.0.2-py3-none-any.whl (43 kB)
|ââââââââââââââââââââââââââââââââ| 43 kB 892 kB/s
Installing collected packages: pymysql
Successfully installed pymysql-1.0.2
Diese Anleitung erklĂ€rt, wie Sie eine Datei angeben, die vor der gewĂŒnschten Seite oder zu Beginn jedes auf Ihrem Server ausgefĂŒhrten PHP-Skripts geladen wird, als ob sie mit der Funktion require()
aufgerufen wurde, aber globaler mit der PHP-Direktive auto_prepend_file
.
Vorbemerkung
- Um beispielsweise die Header einer Website zu deklarieren, können Sie eine Datei
headers.php
erstellen, die PHP-Funktionenheader()
enthĂ€lt und die am Anfang jeder PHP-Datei eingefĂŒgt wirdâŠ- âŠ ĂŒber eine Datei
.user.ini
(ordnerspezifisch), - ⊠oder ĂŒber die Konfiguration der Website im Manager (global), wie unten beschrieben.
- âŠ ĂŒber eine Datei
Eine Datei global vom Manager aus einbinden
Um auf die Verwaltung der Website zuzugreifen:
- Klicken Sie hier, um auf die Verwaltung Ihres Produkts im Infomaniak Manager zuzugreifen (Hilfe benötigen?).
- Klicken Sie direkt auf den Name des betreffenden Produkts:
- Klicken Sie auf Verwalten unter Erweiterte Einstellungen:
- Klicken Sie auf die Registerkarte PHP / Apache.
- FĂŒllen Sie die betreffende Zeile aus, indem Sie den Pfad zur einzufĂŒgenden Datei eingeben.
- Klicken Sie auf die SchaltflÀche zum Speichern:
Nach der Definition dieser Direktive werden alle PHP-Seiten auf Ihrem Server automatisch die angegebene Datei einbinden, bevor sie ihren eigenen Code ausfĂŒhren.
Die in einer Datei .htaccess
definierten Header gelten nur fĂŒr nicht-PHP-Inhalte (also statische Inhalte).
Infomaniak verwendet php-fpm
, das die verschiedenen Header ĂŒber apache fast_cgi
empfÀngt. In der RFC von cgi_www gehört der Header Strict-Transport-Security
nicht zu den ĂŒber CGI ĂŒbermittelten Headern, und die Apache-Dokumentation bestĂ€tigt dies. Nehmen Sie sich diese andere RFC zur Kenntnis.
â ïž FĂŒr zusĂ€tzliche Hilfe kontaktieren Sie einen Partner oder starten Sie kostenlos eine Ausschreibung â erfahren Sie auch die Rolle des Hosters.
Die Infomaniak-Infrastruktur ĂŒbertrĂ€gt keine Virtualisierungsanweisungen an die VPS Cloud / VPS Lite; es ist daher keine verschachtelte Virtualisierung möglich (Virtualisierung, die innerhalb einer bereits virtualisierten Umgebung ablaufen wĂŒrde), da dies insbesondere bei Live-Migrationen zu Problemen fĂŒhrt.
Zur Verwendung von Modulen Perl
ĂŒber ein Cloud-Server Infomaniak, es ist notwendig, sie zu installieren im Benutzerbaum und Den kompletten Pfad innerhalb der Skripte festlegen.
Damit können Sie Ihre Module frei installieren und aktualisieren.
Dieser Leitfaden befasst sich mit der Erstellung privater Netzwerke zwischen verschiedenen Infomaniak-Hosting-Angeboten wie VPS Cloud / VPS Lite, Public Cloud, NAS Synology, etc.
Ein VLAN zwischen VPS erstellen
Es ist nicht möglich, ein privates Netzwerk (VLAN) zwischen VPS Cloud / VPS Lite und anderen Produkten, wie z.B. NAS Synology, zu erstellen, da sie in verschiedenen Netzwerken installiert sind.
Es ist jedoch möglich, ein VLAN zwischen mindestens 10 VPS Cloud / VPS Lite zu erstellen, die Ihnen gehören (kontaktieren Sie den Infomaniak-Support), jedoch kann ein dediziertes privates Netzwerk nicht mit einem anderen kommunizieren.
Es wird empfohlen, auf das Angebot Public Cloud zu migrieren, um solche privaten Netzwerke zwischen VM zu erstellen.
Diese Anleitung bezieht sich auf die Installation von PHP-Erweiterungen fĂŒr Webhosting Infomaniak.
Verwendung von Zend PHP-Erweiterungen
- Zend Guard Loader ist eine PHP-Erweiterung, die es ermöglicht, ĂŒber Zend Guard verschlĂŒsselte PHP-Skripte auszufĂŒhren.
- Zend Guard Loader ist standardmĂ€Ăig fĂŒr PHP <= 5.6 auf allen Webhostings installiert und fĂŒr PHP-Versionen >= 5.6 nicht verfĂŒgbar.
- Seit PHP 5.3.x wurde das Modul Zend Optimizer durch ZendGuardLoader ersetzt
- Das ZendOPCache Modul erfordert einen Serveur Cloud konfiguriert mit PHP 5.5 mindestens
Jelastic Cloud ist eine Plattform als Service (PaaS), die es ermöglicht, Entwicklungsumgebungen einfach und schnell zu erstellen. Diese Lösung ist besonders vorteilhaft, wenn Ihr Ressourcenverbrauch (CPU, RAM) je nach Jahreszeit stark schwankt.
Un Serveur Cloud ermöglicht es Ihnen, Anwendungen und Websites genauso einfach zu verwalten wie bei einer Shared-Hosting-Lösung, und bietet Ihnen den Vorteil, zusÀtzliche Software nach Bedarf installieren zu können. Diese Lösung ist sehr vorteilhaft, wenn Ihr Ressourcenverbrauch (CPU, RAM) stabil und vorhersehbar ist.
Ein VPS Cloud oder VPS Lite ermöglicht es Ihnen, Ihren gesamten Server mit der gewĂŒnschten Linux-Distribution zu verwalten. HierfĂŒr sind solide technische Kenntnisse erforderlich. Diese Lösung ist sehr vorteilhaft, wenn Ihr Ressourcenverbrauch (CPU, RAM) stabil und vorhersehbar ist.
In allen drei FÀllen profitieren Sie von vollstÀndig dedizierten Ressourcen, die Sie nach Bedarf frei anpassen können.
Nehmen Sie auch das Angebot Public Cloud zur Kenntnis.
In diesem Leitfaden wird erlÀutert, wie der Wert erhöht werden kann. max_children
ĂŒber Cloud-Server um die Anzahl gleichzeitiger PHP-Prozesse zu erhöhen, die von Ihrer Website genutzt werden können. Dies wird sehr nĂŒtzlich sein, um unendliche Probleme beim Laden der Seiten Ihrer Website zu lösen.
PrÀambel
- StandardmĂ€Ăig bei allen UnterkĂŒnften, die Grenze von
max_children
wird auf 20 festgelegt.- Obwohl es möglich ist, diesen Wert aus dem Infomaniak Manager zu erhöhen, ist die Grenze von
max_children
wird automatisch entsprechend der Konfiguration Ihres Cloud-Servers angepasst. - Um diese Grenze fĂŒr die gemeinsame Unterbringung zu erhöhen, Auf Cloud-Server migrieren.
- Obwohl es möglich ist, diesen Wert aus dem Infomaniak Manager zu erhöhen, ist die Grenze von
- Um zu verstehen, wie man die
max_children
mĂŒssen, nehmen Sie Kenntnis von Dieser Artikel In diesem Zusammenhang.
Max_children-Wert erhöhen
Voraussetzungen
- Stellen Sie sicher, dass Sie ĂŒber die notwendigen Ressourcen auf dem Cloud-Server verfĂŒgen.
- Stellen Sie sicher, dass alle Ressourcen des Cloud-Servers nicht genutzt werden; falls sich herausstellt, dass diese vollstÀndig genutzt werden, erhöht sich der Wert
max_children
wird keine Wirkung haben (Cloud-Server-Ressourcen bearbeiten). - Kontrollieren Sie das Monitoring der Ressourcen Ihres Servers, falls die Ressourcen Ihres Servers erreicht werden, wird es notwendig sein die Optimierung der Prozesse und Ihrer Website zu ĂŒberprĂŒfen bevor Sie eine Erhöhung des Wertes in ErwĂ€gung ziehen
max_children
. - PHP-Fehlerberichte aus dem Ordner anzeigen
/ik-logs
(master process php logs - Dateiname: php-fpm.log) zu prĂŒfen, ob die Grenze "max_children
"ist ĂŒberholt... ein Beispiel fĂŒr einen Fehler:[05-Jul-2024 09:08:58] WARNING: [pool www.infomaniak.ch] server reached max_children setting (20), consider raising it
Um auf die Verwaltung der PHP / Apache-Einstellungen der Website zuzugreifen, muss der Wert erhöht werden max_children
auf Cloud-Server, nehmen Sie Kenntnis von dieser andere Leitfaden.
Sie können unter anderem...
- ... wÀhlen Sie einen neuen Wert von
max_children
:
Vergessen Sie nicht, die Ănderungen am unteren Rand der Seite zu speichern.
EinschrÀnkungen in AbhÀngigkeit vom Server
Grenzwert fĂŒr max_children
basierend auf den Ressourcen des Cloud-Servers:
Einstellungen Cloud-Server | max_children |
---|---|
2 CPU / 6 GB RAM | 20 |
4 CPU / 12 GB RAM | 40 |
6 CPU / 18 GB RAM | 60 |
8 CPU / 24 GB RAM | 80 |
12 CPU / 36 GB RAM | 120 |
16 CPU / 48 GB RAM | 160 |
24 CPU / 72 GB RAM | 240 |
32 CPU / 96 oder 128 GB RAM | 320 |