Geavanceerd: scripts, rechten, MIME-types en Nginx-templates
Voor ontwikkelaars: CGI- en Perl-scripts, bestandsrechten, Apache-handlers, MIME-types en Nginx-templates.
Dit artikel is bedoeld voor ontwikkelaars en gevorderde gebruikers. Voor een gewone website of WordPress heeft u het meestal niet nodig.
Webserver en .htaccess
Op de Knippin-servers staat Nginx vóór Apache. Nginx levert snel de vaste bestanden, Apache verwerkt de rest. Daardoor werken .htaccess-bestanden gewoon, bijvoorbeeld voor doorverwijzingen of de permalinks van WordPress.
PHP-scripts
PHP-bestanden (.php) werken in elke map onder public_html. Voor de versie en instellingen zie PHP-versie en -instellingen. Een script op tijd laten draaien? Zie Cronjobs.
Paden die u vaak nodig heeft:
| Wat | Pad |
|---|---|
| Uw website | /home/gebruikersnaam/domains/voorbeeld.nl/public_html |
| PHP via de opdrachtregel | php (of /usr/local/bin/php) |
| Perl | /usr/bin/perl |
CGI- en Perl-scripts
CGI-scripts zet u in een map cgi-bin in public_html. Bestaat die nog niet, maak hem dan aan. Controleer dat CGI Access aanstaat bij het domein (Account Manager → Domains → uw domein).
- De eerste regel van een Perl-script is
#!/usr/bin/perl. - Upload het script als tekst (in FTP: ASCII-modus), zodat de regeleinden kloppen.
- Geef het script rechten
755.
Welke Perl-modules er zijn, ziet u onder System Info & Files → Perl Modules. Mist u er een? Maak een ticket aan.

Bestandsrechten
Rechten wijzigt u in de File Manager met Set permissions, of in uw FTP-programma.
| Rechten | Voor |
|---|---|
644 |
Gewone bestanden: HTML, afbeeldingen, PHP-bestanden |
755 |
Mappen en CGI-scripts |
600 |
Bestanden met wachtwoorden, zoals een configuratiebestand |
Gebruik nooit
777. Dan kan iedereen op de server het bestand wijzigen. PHP draait bij Knippin onder uw eigen gebruiker, dus644en755zijn altijd genoeg.
Apache-handlers
Met Advanced Features → Apache Handlers koppelt u een bestandsextensie aan een verwerker. Bijvoorbeeld: laat .html-bestanden als CGI uitvoeren door handler cgi-script te koppelen aan extensie .html. Onder System handlers ziet u wat er standaard al is ingesteld.

MIME-types
Een MIME-type vertelt de browser wat voor bestand het is. Wordt een bestand gedownload in plaats van getoond, of andersom? Voeg dan onder Advanced Features → MIME types het juiste type toe, bijvoorbeeld application/json voor extensie json. Onder System MIME types staan de standaardtypes.

Nginx-templates
Sommige toepassingen, zoals Laravel of een webshop die zonder .htaccess werkt, hebben speciale Nginx-regels nodig. Onder Advanced Features → Nginx Templates zet u kant-en-klare templates aan met Enable en Add Template: u kiest een locatie (map) en een template.

Twijfelt u welke template u nodig heeft, of zoekt u een eigen regel? Maak een ticket aan.
SSH en Redis
SSH-toegang en Redis staan standaard uit. Heeft u ze nodig, bijvoorbeeld voor Git, Composer of caching? Maak een ticket aan, dan bekijken we de mogelijkheden.