PHP i Vortex

Vortex st?tter kj?ring av PHP-skript. Forel?pig ?nsker vi ikke ? skru p? dette annet enn ved konkrete behov. 

NB. Dette gjelder pr. omr?de innenfor en gitt Vortex-host. Dvs. at vi skrur p? kun for de omr?dene der det er behov, og vi beholder samtidig kontrollen med hvor det befinner seg PHP-applikasjoner. Hvis dette er aktuelt for dere, ta kontakt med oss. PHP-versjonen som kj?res er den til enhver tid st?ttede versjonen fra Seksjon for applikasjon- og integrasjonsplattformer, for tiden PHP 7.4.

Begrensninger

F?lgende tekniske begrensninger gjelder for kj?ring av PHP i Vortex

  • Det er ikke mulig ? gj?re noen form for skriving til eller oppretting av filer fra PHP.
  • Det er ikke mulig ? kj?re noen form for eksterne programmer/kommandoer fra PHP-skript.
  • ?pning av filer fra PHP overstyres, slik at rettighetene som er satt i Vortex blir gjeldende.

PHP-applikasjoner

PHP-st?tten i Vortex er ment som en hjelp til migrering av eksisterende l?sninger og andre sm?-behov for PHP (enkle skript for mindre oppgaver o.l.). Vi tillater normalt ikke at st?rre PHP-applikasjoner legges i Vortex. Eksempler slike applikasjoner er bloggverkt?y som Wordpress, CMS-er og portalverkt?y (Drupal), diskusjonsforum (phpbb), osv. Vortex er ikke en Apache-server og er ikke laget for ? kj?re PHP, men er et selvstendig CMS i seg selv. Vi kan forel?pig ikke ta ansvar for sikkerhet og drift av slike PHP-applikasjoner og ?nsker ikke at de kj?rer p? serverene til Vortex.

Dersom du har behov for en PHP-applikasjon er det bedre ? legge denne p? en annen host. Kontakt Seksjon for applikasjon- og integrasjonsplattformer (www-drift@usit.uio.no) p? USIT dersom du har sp?rsm?l rundt dette.

Hvordan kj?re PHP-skript i Vortex

For at en fil skal gjenkjennes som et kj?rbart php-skript, m? filtype v?re satt til text/php p? Om-arkfanen. Hvis man laster opp filer med fil-endelsen .php, vil vi gjette denne filtypen hvis nettleseren ikke sier noe annet.

Les de p?f?lgende avsnittene for viktig informasjon rundt sikkerhet, rettigheter og annet i forbindelse med kj?ring av PHP-skript i Vortex.

Rettigheter p? php-filer

Vanligvis er det ikke noe behov for ? beskytte tilgangen til ? lese kildekoden til dokumenter i Vortex, men dette vil fort v?re annerledes for php-filer. Fordi php-filer fort kan inneholde sensitive data, anbefaler vi at man alltid s?rger for ? skru av leserett for disse, og istedet bruker rettigheten Kun lese transformert under "Avanserte rettigheter" p? Rettigheter-arkfanen, for ? gi brukerne tilgang.

Inkludering av filer fra php-skript

Det er mulig ? lese andre filer fra php. For at dette skal v?re sikkert, gjelder f?lgende begrensninger:

  • Klienten autoriseres for kun lese transformert-rettighet (inkluderer ogs? lese-rettighet) mot filene.

I praksis betyr dette at alle filer som inkluderes, b?r ha samme rettigheter som php-skriptet. Dette gj?res enklest ved ? samle alle filene i en mappe og bare sette rettigheter p? mappa.

  • Filer som inkluderes m? ha samme eier som skript-fila.

Dette kan fort v?re en litt slitsom begrensning hvis flere jobber sammen om ? lage en php-l?sning. I slike situasjoner kan det v?re viktig ? vite at administratorer p? ressurser har rett til ? ta eierskap.

Vi tillater ?pning av filer (og includes) med absolutte paths (alts? som begynner med '/') og relative paths.

For ? ?pne filer med absolutte paths m? f?lgende gj?res:

include($_SERVER["DOCUMENT_ROOT"] . "/path/til/fil");

PHP og tegnsett

N?r man jobber med PHP, er det en stor fordel ? bruke UTF-8 som tegnsett. PHP-motoren har satt utf-8 som standard tegnsett. Det betyr at hvis man ikke setter noe annet selv i skriptet, vil PHP rapportere "Content-Type: text/html;charset=utf-8" til nettleseren. I tillegg vil Vortex alltid gjette at php-filer har tegnsettet utf-8 (med mindre man overstyrer dette p? Om-arkfanen), og dette har betydning for eksempel hvis man redigerer skriptet p? Rediger kildekode-arkfanen.

Hvis man m?, er det er det fortsatt mulig ? bruke iso-8859 som tegnsett. Men da m? man sette Content-Type-headeren selv i php-skriptet (og overstyre tegnsettet til filen p? Om-arkfanen). I tillegg er det slik at eventuelle forms, som sender parametere til php, eksplisitt m? sende disse utf-8-kodet. Dette gj?res ved ? sette accept-charset="UTF-8" p? form-taggen (dette virker dessverre ikke p?litelig i alle nettlesere).

Dekorering og PHP

PHP script blir dekorert etter samme regler som HTML filer. Det vil si at markup og tekst som befinner seg utenfor <html>-taggen ikke vil bli vist. Det vil si at feilmeldinger fra PHP ikke vil bli vist hvis du kj?rer PHP utenfor <html>-taggen. S? derfor anbefaler vi at du kj?rer PHP slikt som vist i eksempelet under.

<html>
<head>

<?php
$tittel = "En PHP side";
echo "<title>" . $tittel . "</title>";   
?>

</head>
<body>

<?php
$overskrift = "En PHP overskrift";
echo "<h1>" . $overskrift . "</h1>";
?>

</body>
</html>

Hvis du jobber med et PHP script som ikke er pakket inn i en <html>-tag s? er en n?dl?sning ? skru av dekorering og parsing ved ? legge f?lgene parametre til URL-en:

?x-prevent-decorating&x-prevent-parsing

Da vil du f? det scriptet lager uten at dekoreringen til Vortex r?rer det.

Inkludering av php-skript i html-sider

Php-skript kan inkluderes i vanlige html-sider, ved ? bruke komponenten "include:file virtual".

Publisert 31. mai 2007 09:57 - Sist endret 17. mars 2022 09:44