Kennisbank

1.000 veelgestelde vragen, 500 tutorials en uitlegvideo's. Hier vind je alleen maar oplossingen!

Deze handleiding beschrijft de beperkingen met betrekking tot het aantal toegestane gelijktijdige verbindingen met de MySQL-databases van de webhosting.

 

Limieten voor gelijktijdige MySQL-verbindingen

Om de stabiliteit, veiligheid en reactiesnelheid van de server voor alle gebruikers te waarborgen, worden er door het systeem limieten opgelegd aan het aantal gelijktijdige verbindingen.

Voor elke databasegebruiker bij Infomaniak is het maximum aantal gelijktijdige MySQL-verbindingen vastgesteld op 38.

Dit quotum voorkomt overbelasting van de gedeelde resources. Als deze limiet wordt overschreden, wordt de toegang tijdelijk geblokkeerd en kunnen er foutmeldingen zoals Gebruiker heeft al meer dan 'max_user_connections' actieve verbindingen of Te veel verbindingen verschijnen.

In de praktijk wordt deze limiet zelden bereikt. Indien nodig is het uiteraard mogelijk om de belasting te verdelen door afzonderlijke MySQL-gebruikers aan te maken voor de verschillende scripts of services van uw website.

 

Geen beperking op het aantal verbindingen per uur

Infomaniak hanteert geen beperkingen op het aantal verzoeken per uur. Instellingen zoals MAX_QUERIES_PER_HOUR of MAX_CONNECTIONS_PER_HOUR zijn niet geactiveerd.

In tegenstelling tot sommige concurrerende aanbiedingen, zult u geen foutmeldingen krijgen over het overschrijden van de beschikbare resources, zoals SQL Error: 1226, als gevolg van een hoog activiteitsvolume per uur.

 

Meer informatie

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/471


Is deze veelgestelde vragenlijst nuttig geweest?

Deze technische handleiding beschrijft de resourcebeperkingen voor webhosting bij Infomaniak. Het is belangrijk om onderscheid te maken tussen de reële tijd (klok) en de rekentijd (processor) om de oorzaak van scriptonderbrekingen te begrijpen.

 

1. MySQL-verbindingstijd (I/O)

Limiet: 30 seconden

Deze limiet komt overeen met de werkelijke tijd die verstrijkt. Het betreft de communicatie tussen PHP en de databaseserver (MySQL/MariaDB).

Zodra een verbinding is geopend, geeft de databaseserver maximaal 30 seconden om de query te ontvangen, uit te voeren en de resultaten terug te sturen. Als deze tijdslimiet wordt overschreden (vaak door een slecht geoptimaliseerde SQL-query), verbreekt de MySQL-server de verbinding abrupt. Dit genereert meestal de foutmelding MySQL server has gone away.

 

2. PHP-verwerkingstijd (CPU)

Limiet: 10 seconden CPU-tijd

Deze limiet geldt uitsluitend voor de rekentijd die de webserver gebruikt om PHP-code uit te voeren.

Het is belangrijk om te benadrukken dat de wachttijd niet wordt meegerekend. Wanneer PHP op een antwoord van de database wacht, is het in een pauze en verbruikt het vrijwel geen CPU-tijd. Daarom wordt een script alleen door de webserver onderbroken als het intensieve berekeningen uitvoert (complexe lussen, cryptografie, bestandverwerking) gedurende meer dan 10 seconden in totaal.

 

Interactie tussen de twee limieten

Om de stabiliteit van de applicatie te garanderen, moet elke bewerking tegelijkertijd aan deze twee afzonderlijke voorwaarden voldoen:

  • De applicatie heeft 30 seconden totale tijd om met de database te communiceren (netwerklatentie + SQL-uitvoering).
  • De applicatie heeft 10 seconden pure rekentijd om de ontvangen gegevens te verwerken.

Voorbeeld van een correcte werking: een script dat 25 seconden wacht op een complex antwoord van MySQL (I/O) en vervolgens het resultaat 2 seconden verwerkt (CPU), zal perfect werken, omdat het geen van beide individuele quota's heeft overschreden, ook al is de totale tijd 27 seconden.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/481


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u het verkeer van een aliasdomeinnaam (synoniem) kunt doorverwijzen naar uw hoofddomein, of hoe u ervoor kunt zorgen dat het hoofddomein in de adresbalk van de browser wordt weergegeven.

 

Voorkom duplicatie van inhoud (duplicate content)

Stel dat uw website is gehost onder het hoofddomein example.com en dat u een aliasdomein zoals example-alias.com heeft geconfigureerd.

Standaard blijft de URL die de bezoeker heeft ingevoerd zichtbaar in de browser, ongeacht of hij example.com of example-alias.com heeft gebruikt. Dit kan leiden tot dubbele content, wat nadelig is voor de zoekmachineoptimalisatie (SEO).

Om dit te voorkomen, kunt u een automatische doorverwijzing instellen: als een bezoeker example-alias.com intypt, wordt hij automatisch doorgestuurd naar example.com.

Deze instelling kunt u configureren in het bestand .htaccess, dat zich in de hoofdmap van uw hosting bevindt (meestal in de map /web via uw FTP-toegang). Als dit bestand nog niet bestaat, moet u het aanmaken.

Voeg vervolgens de volgende regels toe aan het bestand:

RewriteEngine On

# Forceer HTTPS en de omleiding naar het hoofd domein
RewriteCond %{HTTP:X-Forwarded-Proto} !https [OR]
RewriteCond %{HTTP_HOST} !^example\.com$ [NC]
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

Pas de bovenstaande code aan naar uw wensen:

  • Vervang example.com door uw hoofddomeinnaam en de bijbehorende extensie (.com, .org, .ch, enz.). Voeg www. toe vóór uw domein als u wilt dat het subdomein www altijd wordt weergegeven.
  • Als er een redirect-lus ontstaat, kunt u de protocolconditie vervangen door RewriteCond %{HTTPS} off (vooral als uw hosting geen reverse proxy gebruikt).

Raadpleeg de documentatie over automatische redirects naar HTTPS voor meer informatie.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/482


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding behandelt de synchronisatie van servers via het NTP-protocol (Network Time Protocol) en de configuratie van de tijdzone op de servers van Infomaniak.

 

Precieze synchronisatie van servers via NTP

De servers van Infomaniak zijn allemaal gesynchroniseerd via het NTP-protocol. Het bedrijf stelt zijn eigen stratum-1 NTP-servers ter beschikking, die toegankelijk zijn voor het publiek en flexibel kunnen worden gebruikt.

Om deze servers in uw instellingen te integreren, gebruikt u de volgende vermelding: pool.ntp.infomaniak.ch.

De standaardinstelling voor de tijdzone is UTC. De PHP-functies zijn echter ontworpen om rekening te houden met verschillende tijdzones, afhankelijk van de specifieke behoeften.

Om de tijdzone in uw PHP-scripts aan te passen, gebruikt u de functie date_default_timezone_set('UTC').

 

MySQL: specifieke tijdfuncties

De infrastructuur van Infomaniak ondersteunt functies waarmee u op een nauwkeurige en efficiënte manier met tijdgebonden gegevens kunt werken, waarbij rekening wordt gehouden met tijdzones, wat cruciaal is voor veel moderne toepassingen:

  • MySQL maakt gebruik van een tijdzone-database om informatie over tijdzones op te slaan en te beheren.
  • De tabel mysql.time_zone bevat de gegevens van de tijdzones, inclusief informatie over tijdsverschillen, tijdzonenamen, enzovoort.
  • De functie CONVERT_TZ wordt gebruikt om een tijd van de ene tijdzone naar de andere te converteren in MySQL, met de volgende syntaxis: CONVERT_TZ(dt, from_tz, to_tz), waarbij:
    • dt de datum/tijd is die moet worden geconverteerd.
    • from_tz is de bron-tijdzone.
    • to_tz is de doel-tijdzone.
  • Voorbeeld: CONVERT_TZ('2024-05-14 12:00:00', 'UTC', 'America/New_York') converteert de tijd 12:00:00 UTC naar de lokale tijd in New York.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/487


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding helpt u bij het oplossen van een fout van het type "Ongeldige query: de MySQL-server is niet meer bereikbaar".

 

Inleiding

 

Oplossingen

Om de foutmelding "MySQL-server is niet meer beschikbaar" te voorkomen, zijn er verschillende mogelijke benaderingen:

Automatische verificatie en herverbinding

Voordat u een query uitvoert, wordt aanbevolen om te controleren of de MySQL-verbinding nog actief is. Als de verbinding is verbroken, kunt u deze automatisch herstellen voordat u verdergaat met uw query. Hier is een voorbeeld in PHP:

if (!mysqli_ping($connexion)) {
mysqli_close($connexion);
$connexion = mysqli_connect($host, $user, $password, $database);
}

De functie mysqli_ping() controleert of de verbinding nog steeds geldig is. Zo niet, dan sluit het script de verbinding en opent een nieuwe verbinding.

Regelmatig een "ping" verzenden

Een andere methode is het uitvoeren van een script dat regelmatig een "ping" naar de database stuurt om de verbinding actief te houden. U kunt bijvoorbeeld een geplande taak (cron job) aanmaken die met regelmatige tussenpozen een eenvoudige query, zoals SELECT 1;, verzendt.

Aanpassen van de MySQL-instellingen (Cloudserver)

Met een Cloudserver kunt u de waarden van de variabelen wait_timeout en interactive_timeout verhogen via het MySQL-menu van uw server om de duur van de verbinding te verlengen voordat deze wordt gesloten.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/499


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding beschrijft de functie van het bestand browscap.ini, dat door PHP wordt gebruikt om bepaalde kenmerken van een webbrowser te identificeren (naam, versie, besturingssysteem en mogelijkheden) op basis van de HTTP-header User-Agent.

Het gebruik van browscap.ini is tegenwoordig vooral bedoeld om de compatibiliteit met bestaande applicaties te waarborgen. Voor nieuwe ontwikkelingen worden doorgaans modernere methoden gebruikt.

 

Gebruik met de functie get_browser()

De ingebouwde PHP-functie get_browser() vereist toegang tot een actueel browscap.ini-bestand om de kenmerken van de browser te identificeren die de aanvraag heeft gedaan.

Op de webhosting van Infomaniak is dit bestand doorgaans beschikbaar op de volgende locatie:

/opt/php/lib/php/browscap.ini

Indien nodig kunt u de inhoud controleren met behulp van het volgende script:

<?php
header('Content-Type: text/plain');

$file = '/opt/php/lib/php/browscap.ini';

if (file_exists($file)) {
    echo file_get_contents($file);
} else {
    echo 'Bestand niet gevonden.';
}

Vanwege de omvang en de kosten van het laden ervan, kan het gebruik van browscap.ini de prestaties van applicaties die gebruikmaken van get_browser() beïnvloeden.

 

Aanbevolen alternatieven

Voor nieuwe projecten is het over het algemeen beter om oplossingen te gebruiken die beter aansluiten bij de huidige webontwikkelingspraktijken:

  • PHP-bibliotheken die met Composer zijn geïnstalleerd, zoals matomo/device-detector of whichbrowser/parser, die een regelmatig bijgewerkte en uitgebreidere detectie van browsers en apparaten bieden.
  • User-Agent Client Hints (UA-CH), wanneer de browser deze ondersteunt, om gestructureerde informatie te verkrijgen via de mechanismen die zijn voorzien in de huidige HTTP-standaarden.
  • Functiedetectie (Feature Detection), waarbij rechtstreeks wordt gecontroleerd of een functie beschikbaar is (bijvoorbeeld in JavaScript of met de CSS-regel @supports) in plaats van het gedrag af te leiden op basis van de gebruikte browser.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/505


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding gaat over Django, een open-source webontwikkelingsframework in Python, dat vooral bekend staat om zijn betrouwbaarheid en de snelheid waarmee je er mee kunt ontwikkelen.

 

Django installeren

Vereisten

  • Een geschikt hostingpakket:
    • Voor het implementeren van een Python-applicatie die een applicatieserver vereist die continu actief is, is een standaard gedeelde webhostingoplossing niet geschikt.
    • Er is volledige toegang tot de server via SSH vereist.
  • Technische vereisten:
    • Python 3 moet op de server geïnstalleerd zijn, evenals de pakketbeheerder pip.
  • Basiskennis:
    • Bekendheid met de opdrachtregelinterface (CLI) onder Linux en het beheer van virtuele Python-omgevingen (zoals venv).

Hieronder vindt u de algemene stappen om uw omgeving op uw server in te stellen:

Het is noodzakelijk om Django te installeren op webhostingpakketten die volledige controle over de uitvoeringsomgeving garanderen, zoals Cloud VPS / VPS Lite: ontdek de verschillende webhostingopties van Infomaniak.

  1. Log in op uw VPS-server via SSH.
  2. Maak een virtuele omgeving aan en activeer deze voor uw project, zodat uw afhankelijkheden geïsoleerd zijn (bijv. python3 -m venv my_environnement en vervolgens source my_environnement/bin/activate).
  3. Installeer het framework via de pakketbeheerder: pip install django.
  4. Initialiseer uw nieuwe project met het volgende commando: django-admin startproject naam_van_project.

 

Implementatie

Let op: de ontwikkelserver die is geïntegreerd in Django (gestart via runserver) is niet bedoeld voor een productieomgeving. Om uw website veilig op internet beschikbaar te maken op uw Infomaniak VPS, moet u een applicatieserver configureren (zoals Gunicorn of uWSGI) achter een reverse proxy, zoals Nginx of Apache.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/516


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding helpt u bij het vinden van het openbare IP-adres van uw apparaat, wat nuttig kan zijn bij bepaalde ondersteuningsverzoeken.

 

Het openbare IP-adres weergeven op het verbonden apparaat

Klik hier om het openbare IP-adres van uw apparaat in het formaat IPv4 en IPv6 te verkrijgen.

 

Alternatieve methoden

Bezoek ipinfo.io of ifconfig.me.

… op macOS

  1. Voer via een applicatie van het type Terminal (commandoregelinterface, CLI /Command Line Interface) op uw apparaat het commando curl ifconfig.me uit en druk op Enter.
  2. Het weergegeven adres is het openbare IP-adres van de computer.

 

Houd er rekening mee dat dit adres periodiek kan veranderen, vooral als de router opnieuw wordt opgestart of als de internetprovider een dynamische toewijzing van IP-adressen gebruikt.

 

Om het zoeken naar het openbare IP-adres te automatiseren, kunt u commando's of scripts gebruiken die services zoals api.ipify.org bevragen...

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/528


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u PHPMailer kunt gebruiken met de webhosting van Infomaniak om e-mails vanaf een website te verzenden.

 

⚠ LET OP ⚠

Infomaniak garandeert dat haar diensten voldoen aan de standaardprotocollen (IMAP, S3, enz.), maar biedt geen extra ondersteuning voor externe diensten of software, omdat de configuratie daarvan kan veranderen afhankelijk van de leverancier of uitgeverDeze handleiding wordt dan ook slechts als indicatie verstrekt en de implementatie ervan blijft uw verantwoordelijkheid (zie: Servicevoorwaarden / Art. 11.9 van de algemene voorwaarden). Indien nodig kan een gekwalificeerde persoon u hierbij ondersteunen.


 

Inleiding

  • PHPMailer is een PHP-bibliotheek waarmee e-mails kunnen worden gemaakt en verzonden vanaf een website, onder andere via SMTP.
  • Hiermee kunnen onder andere berichten in HTML-formaat worden verzonden, een alternatieve tekstversie worden toegevoegd, bijlagen worden beheerd en SMTP-authenticatie worden gebruikt.
  • Voor het verzenden van e-mails via SMTP met authenticatie moet de PHP-omgeving die door de website wordt gebruikt, compatibel zijn met een recente versleutelde verbinding, met name TLS 1.2 of hoger.
    • Een te oude versie van PHP of de OpenSSL-bibliotheek die door PHP wordt gebruikt, kan een verbindings- of authenticatiefout veroorzaken, zelfs als het e-mailadres en het wachtwoord correct zijn.
    • Gebruik geen PHP 5.3/5.4 voor dit type verzending; gebruik een recente en ondersteunde versie van PHP.
  • Bij het verzenden van e-mails via SMTP met authenticatie moet het als afzender gebruikte adres overeenkomen met het e-mailadres dat voor de SMTP-authenticatie wordt gebruikt.

 

PHPMailer installeren

Om PHPMailer te gebruiken, installeert u de bibliotheek in de bestanden van uw website.

  1. Download PHPMailer van de officiële repository of installeer het met Composer als uw project dit gebruikt.
  2. Kopieer de PHPMailer-bestanden naar een map op uw website via FTP.
  3. Upload de benodigde bestanden naar uw PHP-script en pas het pad aan op basis van de gekozen locatie:

    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\Exception;
    
    require **DIR** . '/PHPMailer/src/Exception.php';
    require **DIR** . '/PHPMailer/src/PHPMailer.php';
    require **DIR** . '/PHPMailer/src/SMTP.php';

 

Configureer het verzenden van e-mails via SMTP met Infomaniak

Gebruik de volgende geauthenticeerde SMTP-instellingen:

  • SMTP-server: mail.infomaniak.com
  • Poort: 465
  • Versleuteling: SMTPS / SSL-TLS
  • Authenticatie: verplicht
  • Gebruikersnaam: het volledige e-mailadres
  • Wachtwoord: het wachtwoord van het e-mailadres dat wordt gebruikt.

Voorbeeld van een volledige configuratie:

<?php

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;

require **DIR** . '/PHPMailer/src/Exception.php';
require **DIR** . '/PHPMailer/src/PHPMailer.php';
require **DIR** . '/PHPMailer/src/SMTP.php';

$mail = new PHPMailer(true);

try {
// Configuration SMTP
$mail->isSMTP();
$mail->Host       = 'mail.infomaniak.com';
$mail->SMTPAuth   = true;
$mail->Username   = '[sender@domain.xyz](mailto:sender@domain.xyz)';
$mail->Password   = 'mot_de_passe_de_l_adresse_mail';
$mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
$mail->Port       = 465;
$mail->CharSet    = 'UTF-8';

```
// Expéditeur
// L'adresse doit correspondre à celle utilisée pour l'authentification SMTP.
$mail->setFrom('sender@domain.xyz', 'Nom du site');

// Destinataire
$mail->addAddress('recipient@example.com');

// Adresse de réponse facultative
$mail->addReplyTo('sender@domain.xyz', 'Nom du site');

// Contenu du message
$mail->isHTML(true);
$mail->Subject = 'Message envoyé depuis le site';
$mail->Body    = '<p>Contenu HTML du message.</p>';
$mail->AltBody = 'Contenu texte du message.';

$mail->send();
echo 'Message envoyé';
```

} catch (Exception $e) {
echo 'Le message n'a pas pu être envoyé. Erreur: ' . htmlspecialchars($mail->ErrorInfo);
}

Als uw applicatie het gebruik van poort 587 vereist, gebruikt u dan STARTTLS:

$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->Port       = 587;

 

Controleer de PHP-versie en de TLS-compatibiliteit

Voor het verzenden van e-mail via geverifieerde SMTP is een recente, versleutelde verbinding vereist. Als de website een te oude versie van PHP gebruikt, bijvoorbeeld PHP 5.3, of een te oude OpenSSL-bibliotheek, kan PHPMailer mislukken, vóór of tijdens de authenticatie. De foutmeldingen kunnen dan misleidend zijn, bijvoorbeeld:

  • SMTP connect() failed
  • Kon niet authenticeren
  • stream_socket_enable_crypto()
  • een authenticatiefout, ook al is het wachtwoord correct

Controleer in dat geval de volgende punten:

  1. de PHP-versie die door de website wordt gebruikt;
  2. de OpenSSL-versie die door PHP wordt gebruikt;
  3. de versie van PHPMailer die door uw project wordt gebruikt;
  4. de overeenkomst tussen de SMTP-poort en de gekozen versleuteling.

Voor een betrouwbare configuratie gebruikt u een recente versie van PHP, die compatibel is met TLS 1.2 of hoger, en een actuele versie van PHPMailer. Raadpleeg indien nodig de volgende handleidingen:

 

Een foutmelding 'Afzender komt niet overeen' oplossen

De foutmelding Afzender komt niet overeen, SMTP-code: 550, aanvullende SMTP-informatie: 5.7.1 kan optreden wanneer het adres dat als afzender wordt gebruikt, niet overeenkomt met het e-mailadres dat voor de SMTP-authenticatie wordt gebruikt. Hieronder een voorbeeld dat u moet vermijden:

$mail->Username = 'sender@domain.xyz';
$mail->setFrom('another-address@domain.xyz', 'Nom du site');

In dit voorbeeld verifieert het script zich met sender@domain.xyz, maar probeert het bericht te verzenden met een ander afzenderadres.

Gebruik hetzelfde e-mailadres voor de SMTP-authenticatie en voor de afzender:

$mail->Username = 'sender@domain.xyz';
$mail->setFrom('sender@domain.xyz', 'Nom du site');

De afzendernaam kan worden aangepast, maar het e-mailadres moet consistent blijven met de gebruikte SMTP-account.

Voorbeeld: een contactformulier

Als een bezoeker zijn e-mailadres invult in een formulier, gebruik dit dan niet als afzenderadres van het bericht. Gebruik het geverifieerde e-mailadres als afzender en voeg het e-mailadres van de bezoeker toe als antwoordadres.

Voorbeeld:

$mail->Username = 'sender@domain.xyz';
$mail->setFrom('sender@domain.xyz', 'Formulaire du site');
$mail->addReplyTo($email_visiteur);

Met deze configuratie kunt u vanuit uw e-mailprogramma antwoorden op een bezoeker, zonder dat het bericht wordt verzonden met een niet-geautoriseerd afzenderadres.

 

Activeer tijdelijk de debugmodus

Schakel tijdelijk de debugmodus van PHPMailer in als er een fout optreedt, zodat u meer details over de SMTP-verbinding kunt zien:

$mail->SMTPDebug = 2;
$mail->Debugoutput = 'html';

Schakel deze modus na uw tests weer uit, zodat er geen technische informatie aan de bezoekers van de website wordt getoond.

 

Meer informatie

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/576


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding gaat over het gebruik van de Java-technologie, die, met name wat betreft het geheugengebruik (RAM), niet compatibel is met de eisen van de gedeelde hostingpakketten van Infomaniak. Java-applicaties zijn vaak veeleisend wat betreft resources, wat de prestaties en stabiliteit van de servers die door meerdere gebruikers worden gedeeld, kan beïnvloeden.

 

Beperkte ondersteuning voor client-side applets

Alleen Java-applets aan de clientzijde, dus die in de webbrowser van de gebruiker worden uitgevoerd, worden ondersteund op gedeelde servers. Deze applets vereisen geen grote serverbronnen en veroorzaken daarom niet dezelfde problemen als Java-applicaties aan de serverzijde. Daarom worden geen producten die gebruikmaken van Java-technologie aan de serverzijde ondersteund.

 

Niet-ondersteunde producten en technologieën

Hieronder volgt een niet-uitputtende lijst van specifieke producten en technologieën die niet worden ondersteund op gedeelde servers:

Dit beleid zorgt ervoor dat alle gebruikers van de gedeelde servers optimale prestaties en een eerlijk gebruik van de resources ervaren.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/591


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u de optie MultiViews kunt activeren via een .htaccess-bestand op websites die bij Infomaniak worden gehost.

 

Inleiding

  • In sommige gevallen moet de optie MultiViews worden ingeschakeld om problemen met URL-omleidingen en -herwriting op te lossen.
  • Met deze optie kan de server raden welk bestand de gebruiker zoekt. Bijvoorbeeld:
    • Als de map configuration en het bestand configuration.php zich in de hoofdmap van uw website bevinden en u probeert toegang te krijgen tot het adres domain.xyz/configuration, moet de optie MultiViews zijn ingeschakeld, zodat de server kan raden dat u toegang wilt tot het bestand configuration.php.
  • De optie MultiViews kan soms conflicteren met complexere URL-herrichtingsregels die zijn gedefinieerd door mod_rewrite (gebruikt door veel CMS-systemen).

 

De optie MultiViews inschakelen

Hiervoor:

  1. Open of maak het bestand .htaccess aan dat zich in de hoofdmap van de betreffende website bevindt.
  2. Voeg de volgende regel toe:

    Options +MultiViews
  3. Sla de wijzigingen op.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/605


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding behandelt de uitvoering van de programmeertaal C# en het framework .NET via de implementatie Mono op de hostingomgeving van Infomaniak.

 

Technologieën voor softwareontwikkeling

Om de programmeertaal C# en het framework .NET te gebruiken met de Mono-implementatie, en om softwareapplicaties te ontwikkelen die op verschillende platforms kunnen worden geïmplementeerd en uitgevoerd, buiten de Windows-omgeving, wordt aanbevolen om te kiezen voor oplossingen zoals:

De flexibiliteit en de draagbaarheid die deze platformonafhankelijke omgevingen bieden, betekenen dat een gedeelde webhosting geen uitvoering mogelijk maakt projecten die gebaseerd zijn op C#, .NET of Mono.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/607


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u een bestaand abonnement op Webhosting kunt wijzigen, zodat u bijvoorbeeld extra websites kunt hosten als het maximum aantal toegestane websites is bereikt, of een nieuwere hostingoplossing kunt verkrijgen om te profiteren van de nieuwste versies van PHP en MySQL.

 

Extra websites, schijfruimte of IP-adressen bestellen

Ga naar de configurator voor webhosting:

  1. Klik hier om naar het beheer van uw webhosting in het Infomaniak-beheerportaal te gaan (hulp nodig?).
  2. Klik op het menu met acties ⋮ dat rechts van de betreffende hosting staat.
  3. Klik op Aanbieding wijzigen:
  4. Verhoog de waarden die u wilt wijzigen.
  5. Klik op de knop Volgende om naar de betaalpagina te gaan voor de wijzigingen aan uw hosting:

 

Migreer naar een recentere server

Om te profiteren van een hostingoplossing op een recentere server en daarmee onder andere van de nieuwste versies van PHP & MySQL, kunt u het volgende doen…

Als er geen informatiebalk wordt weergegeven, betekent dit dat u al gebruikmaakt van een recente hostingaanbieding.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/626


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding beschrijft de integratie van de ASP / ASP.NET-omgeving binnen het Infomaniak-ecosysteem.

 

Compatibiliteit en infrastructuur

De oplossingen voor webhosting en beheerde cloudservers zijn geoptimaliseerd voor Linux/Apache-omgevingen. Daarom wordt de module Apache::ASP niet standaard ondersteund op deze gedeelde hostingpakketten.

 

Alternatieven en cloudoplossingen

Om uw ASP-applicaties probleemloos te implementeren, heeft u verschillende opties:

  • Cloud VPS: installeer en configureer uw eigen ASP/IIS-stack of gebruik Mono/Core op een distributie naar keuze.
  • Jelastic Cloud (PaaS): implementeer uw ASP.NET Core-applicaties via Docker-containers met slechts een paar klikken en profiteer van automatische horizontale schaalbaarheid.
  • Public Cloud: voor infrastructuur met hoge beschikbaarheid, gebaseerd op OpenStack, ideaal voor microservices-architecturen.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/631


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u hotlinking naar bestanden die op uw Webhosting van Infomaniak zijn opgeslagen, kunt beperken.

 

Inleiding

  • Hotlinking is het direct weergeven van afbeeldingen, video's of andere bestanden die op uw server zijn opgeslagen, op een externe website, door hun openbare URL te gebruiken, zonder deze zelf te hosten.
  • Deze praktijk gebruikt de resources van uw hosting (bandbreedte, HTTP-verbindingen en serverresources) zonder uw toestemming. Het kan ook inbreuk maken op uw auteursrechten of op uw controle over de verspreiding van uw content.
  • Hoewel de huidige netwerkcapaciteiten ervoor zorgen dat de impact op de bandbreedte over het algemeen minder kritiek is dan voorheen, wordt het nog steeds aanbevolen om hotlinking te beperken om onnodig gebruik van de resources van uw hosting te voorkomen.

 

Hotlinking voorkomen met een .htaccess-bestand

Als uw website de webserver Apache en de module mod_rewrite gebruikt, kunt u de directe toegang tot bepaalde bestanden beperken door regels toe te voegen aan het bestand .htaccess dat zich in de hoofdmap van uw website bevindt.

Het onderstaande voorbeeld beschermt de belangrijkste afbeeldingsformaten, inclusief de moderne formaten WebP en AVIF:

RewriteEngine On

# Sta verzoeken toe zonder een Referer-header
RewriteCond %{HTTP_REFERER} !^$

# Sta verzoeken toe vanaf uw eigen domein (vervang dit door uw domein)
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?votre-domaine\.com [NC]

# Sta verzoeken toe van belangrijke zoekmachines
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?google\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?bing\. [NC]
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?yahoo\. [NC]

# Blokkeer hotlinking voor afbeeldingsbestanden
RewriteRule \.(jpg|jpeg|png|gif|svg|webp|avif)$ - [F,NC,L]

Pas dit aan voordat u het gebruikt:

  • Vervang uw-domein.nl door uw eigen domeinnaam.
  • Verzoeken zonder een HTTP-header Referer worden toegestaan om de compatibiliteit met bepaalde browsers, applicaties of mechanismen voor privacybescherming te behouden, die deze header niet doorsturen.
  • De regels die de belangrijkste zoekmachines toestaan, geven hun robots toegang tot afbeeldingen, zodat deze kunnen worden geïndexeerd. Door deze regels te verwijderen, wordt voorkomen dat deze afbeeldingen worden geïndexeerd.
  • De regel maakt gebruik van de optie [F], die een HTTP-antwoord 403 Forbidden retourneert. Deze methode blokkeert de aanvraag onmiddellijk zonder extra inhoud te leveren, waardoor het gebruik van de serverbronnen wordt beperkt.

Als u Cloudflare gebruikt als CDN voor uw Infomaniak-hosting, kunt u ook de functie Hotlink Protection activeren via de beheerdersinterface om dit type toegang te blokkeren voordat het uw hosting bereikt.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/678


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding beschrijft opdrachten die kunnen worden uitgevoerd om een verbinding of een netwerk te testen, zodat de mogelijke oorzaak van een fout nauwkeuriger kan worden vastgesteld.

 

Een Telnet-verbinding tot stand brengen…

TELNET maakt het mogelijk om de verbinding met een server te testen, waarbij eventuele extra instellingen van een e-mail- of FTP-applicatie buiten beschouwing worden gelaten, om de oorzaak van een probleem te achterhalen. Als de verbinding met een SMTP-server niet lukt, moet u bijvoorbeeld controleren of uw firewall de poorten 587 of 465 niet blokkeert.

 

… op macOS

  1. Zoek naar Netwerkprogramma.
  2. Ga naar het tabblad Ping, Lookup of Traceroute, afhankelijk van wat u wilt testen.
  3. U kunt ook een applicatie van het type Terminal (commandoregelinterface, CLI / Command Line Interface) op uw apparaat gebruiken en, afhankelijk van wat u wilt testen, het volgende invoeren:
    traceroute [server]
    nc [server] [poort]
    Vervang [server] door de naam van de server of het IP-adres, en idem voor [poort]

 

… op Windows

Activeer Telnet indien nodig.

  1. Gebruik een applicatie van het type Terminal (commandoregelinterface, CLI) op uw apparaat, bijvoorbeeld door Uitvoeren te typen en vervolgens cmd.
  2. In het geopende venster typt u, afhankelijk van wat u wilt testen: 
    tracert [server] 
    telnet [server] [poort] 
    Voorbeeld: telnet mail.infomaniak.com 587(hiermee kunt u de SMTP-poort testen als uw software/e-mailclient geen e-mails kan verzenden)...

 

… op Android

  1. Gebruik de app Simple Telnet Client waarmee u eenvoudig kunt testen door twee velden in te vullen (bijvoorbeeld mail.infomaniak.com en poort 143 of 993)…

 

Een PING uitvoeren

PING maakt het mogelijk om te controleren of een apparaat via internet bereikbaar is. U kunt met dit hulpmiddel ook controleren of u het juiste apparaat benadert, bijvoorbeeld na een DNS-wijziging, door het verkregen IP-adres te bekijken. Het is mogelijk om een ping uit te voeren op een domeinnaam, een hostnaam of een IP-adres.

PING is definitief geblokkeerd op de gedeelde hostingomgevingen van Infomaniak.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/727


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u kunt werken zonder de PECL SSH2 client-module, die niet beschikbaar is op de webhosting- en cloudservers van Infomaniak. In plaats daarvan wordt de phpseclib-bibliotheek gebruikt, die werkt met native PHP zonder dat er een specifieke extensie nodig is.

 

Inleiding

  • Het gebruik van PECL SSH2 client veroorzaakt in de nieuwste beschikbare versie fouten van het type Geen compatibele sleuteluitwisselingsalgoritmen gevonden of Kan geen encryptiesleutels uitwisselen.
  • Phpseclib biedt de volgende mogelijkheden:
    • SSH-authenticatie met wachtwoord of privésleutel.
    • Het uitvoeren van opdrachten op afstand.
    • Veilig bestandsoverdracht (SFTP).
    • Het beheren van SSH-sleutels.

 

phpseclib gebruiken

Om een SSH-verbinding in een PHP-script te integreren, gebruikt u phpseclib als volgt:

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('gebruiker', $key)) {
    exit('Authenticatie mislukt');
}

echo $ssh->exec('ls -la');

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/767


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding beschrijft de stappen die u in eerste instantie moet uitvoeren als u geen verschil ziet tussen uw website na een wijziging die u heeft aangebracht, en de versie voor de wijziging. Deze tips zijn ook van toepassing als u problemen ondervindt bij het gebruik van de interface van Infomaniak-producten.

 

Inleiding

  • Tijdens het surfen op het internet slaat een webbrowser de bekeken gegevens op in een speciale ruimte, zodat deze niet telkens opnieuw van de server hoeven te worden opgevraagd. Dit bespaart tijd en resources.
  • Uw cache kan een enorme hoeveelheid gegevens bevatten en soms raakt de browser in de war. Hierdoor kunnen websites verkeerd worden weergegeven of een verouderde versie tonen.
  • Het wissen van de cache zorgt ervoor dat u altijd de meest recente versie van de bekeken pagina of map te zien krijgt.

 

De cache van uw webbrowser wissen …

 

… in Safari

Selecteer uw macOS-versie om de bijbehorende Apple-handleiding te bekijken.

 

… over de Google-tools (Chrome, Android, enz.)

Raadpleeg de Google-help.

 

… over Firefox

Raadpleeg de Mozilla-handleiding.

 

… over Edge / Internet Explorer

Raadpleeg de Microsoft-ondersteuningspagina.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/793


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding beschrijft de beschikbare functies voor het beheren van relationele databases op de hosting van Infomaniak.

 

Gebruik van views, triggers, opgeslagen procedures en routines

Wat betreft het beheer van relationele databases, is de functionaliteit van 'weergaven' standaard beschikbaar, waardoor gebruikers weergaven kunnen maken om het beheer en de presentatie van gegevens te vereenvoudigen.

Sommige geavanceerde functies die een fijnere en complexere manipulatie van gegevens mogelijk maken, zoals…

  • triggers” (gebeurtenissen)
  • opgeslagen procedures ("stored procedures")
  • routines
  • en het maken van functies

… zijn alleen beschikbaar op Cloudservers.

Ze zijn niet toegestaan op gedeelde servers..

Deze beperking is voornamelijk te wijten aan de potentiële risico's voor de stabiliteit van de infrastructuur. Een onjuiste configuratie of overmatig gebruik van deze functies kan leiden tot oneindige lussen of aanzienlijke overbelasting, wat niet alleen de prestaties van de betreffende server beïnvloedt, maar ook de ervaring van alle klanten die op dezelfde infrastructuur zijn gehost.

 

Een probleem met het importeren van een MySQL/MariaDB-dump oplossen

Bij het exporteren en vervolgens opnieuw importeren van een MySQL- of MariaDB-database via de hostinginterface van Infomaniak kan het voorkomen dat de bewerking mislukt vanwege fouten die verband houden met de DEFINER van triggers of views. Dit gebeurt wanneer de objecten in de database zijn gemaakt met een specifieke gebruiker (de definer) die niet meer bestaat op het moment van de import.

Concreet maakt het export- en importproces gebruik van een tijdelijke gebruiker, die alleen tijdens deze bewerkingen wordt gebruikt. Nadat deze gebruiker is verwijderd, worden de views of triggers die met dit account als DEFINER zijn gedefinieerd ongeldig, waardoor fouten van het volgende type ontstaan:

Algemene fout: 1449 De opgegeven gebruiker als definitor ('xxxx_temp_1'@'%') bestaat niet

 

Om dit probleem te voorkomen, kunt u het back-upbestand (dump.sql of dump.sql.gz) corrigeren voordat u het importeert door de definities van definer te vervangen door CURRENT_USER. Hierdoor worden de triggers en weergaven automatisch gekoppeld aan de gebruiker die op het moment van de import is ingelogd.

Hieronder vindt u een voorbeeld van een opdracht waarmee u de dump kunt aanpassen voordat u deze importeert:

sed -E 's/DEFINER=`[^`][^`]*`@`[^`][^`][^`]*`/DEFINER=CURRENT_USER/g' dump.sql > dump-corrected.sql

 

Nadat deze vervanging is uitgevoerd, kan het gecorrigeerde bestand normaal worden geïmporteerd via het Infomaniak-beheerpaneel. Dit gedrag is bekend en gerelateerd aan de werking van tijdelijke gebruikers tijdens het maken van een back-up/het herstellen van een back-up. Er zijn op korte termijn geen wijzigingen gepland in het export-/importproces, maar het onderwerp wordt nog steeds geëvalueerd op infrastructuurniveau.

Voor meer informatie over de variabele CURRENT_USER, raadpleeg de officiële documentatie van:

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/821


Is deze veelgestelde vragenlijst nuttig geweest?

Deze handleiding legt uit hoe u het wachtwoord van een MySQL/MariaDB-database van een webhostingpakket kunt wijzigen.

 

Inleiding

  • Raadpleeg deze andere handleiding als u informatie zoekt over het bijwerken van de inloggegevens (scripts, websites) in verband met een wijziging van het databasewachtwoord.
  • Een databasegebruiker die is aangemaakt na de installatie van een webapplicatie (aangeboden door Infomaniak) kan niet worden gewijzigd.
    • Om toegang te krijgen tot de database waaraan deze is gekoppeld, moet u een nieuwe databasegebruiker aanmaken met het gewenste wachtwoord en vervolgens de juiste rechten op de database toekennen.

 

Het MySQL MariaDB-wachtwoord wijzigen, enz.

Hiervoor moet u het wachtwoord wijzigen van de gebruiker die aan de betreffende database is gekoppeld (zonder het oude wachtwoord te hoeven opgeven) via het Infomaniak-beheerpaneel:

  1. Klik hier om naar het beheer van uw hosting te gaan in het Infomaniak-beheerpaneel (hulp nodig?).
  2. Klik rechtstreeks op de naam die aan de betreffende hosting is toegewezen:
  3. Klik op Databases in het linkermenu.
  4. Klik op het menu Gebruikers.
  5. Klik op het actiemenu ⋮ rechts van het betreffende item.
  6. Klik op Bewerken:
  7. Klik op Wachtwoord wijzigen.
  8. Voer het nieuwe gewenste wachtwoord in.
  9. Klik op de knop Opslaan:
  10. Indien nodig kunt u de nieuwe rechten (lezen / schrijven / beheren) van de gebruiker configureren voor toegang tot de bestaande databases op de hosting.

Link naar deze veelgestelde vragen: https://faq.infomaniak.com/846


Is deze veelgestelde vragenlijst nuttig geweest?