Denne post i vores ofte stillede spørgsmål er rettet til avancerede
brugere,
alt hvad du gør er på din egen risiko og ansvar.
Bemærk! Hvis du ændrer din PHP-konfiguration, kan tingene stoppe
fungerer, enten straks eller senere. Se her for mere info om PHP-versionerne og webserverne.
Generel info
Vores webserveres standard PHP-konfiguration er god nok til
størstedelen af ansøgningerne. Hvis du ved, at du har brug for en anden konfiguration
indstillinger, kan du tilpasse konfigurationen på egen hånd
risiko. Sådan tilpasning kan være:
- IonCube
- Indstillinger for fejlvisning, tidszone osv.
- Ressourcegrænser, f.eks. hukommelse (memory_limit, post_max_size,
upload_max_filesize), runtime (max_execution_time, max_input_time) osv.
MÅ IKKE ØGES eller OVERskrides.
I modsætning til mod_php
baserede løsninger, kan du
kan ikke tilpasse PHP-konfigurationsindstillinger direkte i
.htaccess
.
Hvis du prøver at gøre det, får du "intern serverfejl".
Hvis du tilpasser indstillinger som dem, der er nævnt ovenfor, og du får
fejl eller funktionsfejl i din software, skal du dobbelttjekke, at du har
ikke tastefejl eller lavet andre fejl i dine tilpasninger. hvis du
kan slet ikke få det til at virke, overlade det til en ekspert eller vende tilbage til vores
standard konfiguration. Sådan noget kan vi ikke yde støtte til
tilpasning.
Hvis du øger eller overskrider ressourcegrænserne (hvilket ikke er tilladt), vil vi
skal muligvis deaktivere den pågældende PHP-kode og/eller
konfigurationsfil. Hvis dit ressourcebehov er større end hvad vi
kan give, bør du bruge en dedikeret server eller virtuel privat
server.
PHP er konfigureret på flere niveauer
- Runtime-niveau (i PHP-scriptet, PHP_INI_USER, PHP_INI_ALL,
ini_set()
- Bibliotekniveau (du bestemmer, PHP_INI_PERDIR, brug
.user.ini
)
- Systemniveau (central konfiguration, beslutter vi, "Hovedværdi",
PHP_INI_SYSTEM og vores
php.ini
)
- Hardkodet niveau (PHP-kompilering/installation, vi ændrer ikke
alt fra Debians standardindstillinger)
PHPs websider har en oversigt over tilgængelige indstillinger.
Konfiguration af typerne PHP_INI_USER og PHP_INI_ALL kan indstilles
hvert script (eller en include-fil), uanset den installerede PHP
version.
ini_set()
PHP_INI_USER
PHP_INI_ALL
De fleste anmodninger om ændringer på systemniveau til variabler er unødvendige,
PHP-udvikleren/vedligeholderen kan indstille disse i programmet/scriptet ved at bruge
ini_set()
,
og det er meget nemt at kontrollere og bekræfte indstillinger med ini_get()
.
Eksempel på ini_set()-brug
<?php
ini_set("display_errors",1);
print(ini_get("dato.tidszone")."\n");
ini_set("date.timezone","Europa/Berlin");
print(ini_get("dato.tidszone")."\n");
?>
Hvis du har brug for at konfigurere tidszonen, skal du erstatte Europa/Berlin med den tidszone, du har brug for . Standarden for vores PHP er "Europa/Oslo", så du ønsker måske at ændre det.
.user.ini
PHP_INI_PERDIR
PHP_INI_USER
Nogle indstillinger kan ikke udføres i et program/script. Hvis du opretter
din egen .user.ini
i mappen www,
du behøver kun at angive dine tilpasninger, i modsætning til i php.ini
, hvor du også skal
angiv dem, du ikke tilpasser.
Eksempel .user.ini
display_errors = Til
date.timezone = "Asien/Jakarta"
Hvis du skal konfigurere tidszonen, skal du erstatte Asien/Jakarta med den tidszone, du vil bruge. Se også PHP's understøttede tidszoneliste.
Udvidelser, moduler og plugins
Mange udvidelser kan installeres i dit eget webhotel og indlæses af en
ændret php.ini
. De kan ikke indlæses
med .user.ini
.
Vi giver heller ikke support til sådanne udvidelser
hvis en meget flink supportperson hjalp dig med at installere den første gang.
Flere sådanne udvidelser er såkaldte PHP-acceleratorer eller "optimizere", som i bund og grund tilbyder dig følgende to tjenester:
- Teoretiske præstationsforbedringer
- Forsløret/krypteret kildekode
De teoretiske præstationsforbedringer vil ofte give bagslag som tabt ydeevne, fordi acceleratorerne antager, at PHP kører som integreret, optimerbar kode (mod_php
) i selve webserveren. Vores webservere kører PHP som CGI under uWSGI for ekstra sikkerhed, hvilket betyder, at din hovedinteresse sandsynligvis vil være i sløring/kryptering.
Noget PHP-software kræver f.eks. IonCube, vil din softwareleverandør
give dig de oplysninger, der er nødvendige for at beslutte, hvad du skal
brug. Vi yder ikke support til sådanne udvidelser.
Eksemplerne nedenfor er kun givet for din bekvemmelighed, og du kan evt
brug dem som eksempler på, hvordan man indlæser udvidelser generelt, på
din egen risiko og ansvar.
IonCube
BEMÆRK: Vi yder ikke support til IonCube.
Brugere af PHP behøver ikke deres egen php.ini
. I stedet anbefaler vi, at du vælger IonCube i vores kontrolpanel, klikker på "View/change" ud for "PHP". Ændringen kan tage 10-30 minutter.
Du kan ikke have din egen php.ini
med denne mulighed. Dette er en forenkling, så du ikke behøver at finde ud af, hvordan du indlæser IonCube via php.ini
.
Hvis du har en forlængelse
fra IonCube, lav
sikker på at du bruger versionen til Linux (x86-64) og dit webhotels
PHP version. Du kan indlæse den ved at tilføje en separat linje
din php.ini
. Vi yder ikke support til IonCube.
Brug versionen Linux (x86-64). x86-versionen fungerer muligvis også.
Zend Optimizer/Zend Guard Loader
BEMÆRK: Vi yder ikke support til Zend Guard. Zend Guard findes ikke til PHP 7.x og nyere, og giver derfor ikke længere installation.
Hvis du oplever problemer med Zend Guard, skal du kontakte din softwareleverandørs supportservice for at opgradere til en version, der understøtter PHP 8.
PECL/PEAR-udvidelser (f.eks. Imagick
Imagick og mange andre udvidelser er forudinstallerede og aktive.
For at få en liste over vores installerede og aktiverede PECL/PEAR-udvidelser, eithende
brug phpinfo()
eller log ind
til login.domeneshop.no
og indtast kommandoen pecl l
og/eller pear l
.
Du kan frit installere yderligere PECL-udvidelser til dit eget webhotel,
men ikke til vores centrale servere. Dette er på eget ansvar. Vi gør ikke
yde støtte til dette.
Tilpassede udvidelser
Hvis du har brug for at tilføje/aktivere yderligere udvidelser, tillader PHP
brug af modulets komplette sti i php.ini
. Dette tillader
brugen af både moduler installeret af os, og dem du vælger til
installere selv. Som eksempel kan du bruge:
extension=/home/1/m/mitnavn/my_extension.so
Dette er også på egen risiko og ansvar.