Drift/Web: Difference between revisions
Added English translation |
Add note about apache conf Tag: 2017 source edit |
||
Line 2: | Line 2: | ||
Denne siden inneholder diverse informasjon om webserveren for PVVs brukere. | Denne siden inneholder diverse informasjon om webserveren for PVVs brukere. | ||
Brukernettsidene hostes for tiden på [[Maskiner/Tom]] | |||
= Apache-konfigurasjon = | |||
Relevant apache-konfigurasjon finner du i <code>/etc/apache2</code>. Legg spesielt merke til <code>/etc/apache2/mods-enabled/userdir.conf</conf> | |||
= PHP-konfigurasjon = | = PHP-konfigurasjon = |
Latest revision as of 22:44, 1 March 2025
Denne siden inneholder diverse informasjon om webserveren for PVVs brukere.
Brukernettsidene hostes for tiden på Maskiner/Tom
Apache-konfigurasjon
Relevant apache-konfigurasjon finner du i /etc/apache2
. Legg spesielt merke til /etc/apache2/mods-enabled/userdir.conf</conf>
PHP-konfigurasjon
Lasting av URLer med fopen() o.l.
Fordi lasting av filer fra en URL via fopen(), include() og tilsvarende funksjoner i PHP er en stor sikkerhetsrisiko er dette slått av på PVV fra og med 7. april 2006. Det vil si at du ikke lenger kan gjøre fing som
$fp = fopen("http://www.foo.com/data.txt", "r")
eller
include("http://www.foo.net/include.html").
Dersom du er avhengig av å laste websider eller filer fra andre webservere må du heretter bruke funksjoner som fsockopen() e.l. for å hente filer fra andre maskiner, f.eks.:
<?php
function get_url($host, $path, $port = 80) {
$fp = @fsockopen($host, $port, $errno, $errstr, 5.0);
if (!is_resource($fp)) {
return $errstr;
}
// Send request
fputs($fp, "GET $path HTTP/1.0\nHost: $host:$port\n\n");
// Skip HTTP-header
while (!feof($fp)) {
$line = fgets($fp, 1024);
if (trim($line) == '') break;
}
// Read body
$body = '';
while (!feof($fp)) { $body .= fgets($fp, 1024); }
fclose($fp);
return $body;
}
print get_url("www.pvv.ntnu.no", "/");
?>
Visning av feilmeldinger
I utgangspunktet er ikke php-feilmeldinger vist. Til at feilmeldinger skal vises, lag filen .htaccess med følgende innhold:
php_flag display_errors on
php_value error_reporting E_ALL
Filen lages i katalogen til scriptet som skal kjøres.
Maintenance/Web
This pabe contains various information on the web-server for PVVs users.
PHP-configuration
Loading of URLs with fopen() and such
Because the loading of files from an URL by fopen(), include(), and similar functions in PHP is a huge security risc it is disabled at PVV from the 7. of April 2006. It means that you no longer can do things such as
$fp = fopen("http://www.foo.com/data.txt", "r")
or
include("http://www.foo.net/include.html").
If you are dependent on loading webpages or files from other web-servers you hereafter have to use functions such as fsockopen() or similar to fetch files from other machines, to get files from other machines, for an instance:
<?php
function get_url($host, $path, $port = 80) {
$fp = @fsockopen($host, $port, $errno, $errstr, 5.0);
if (!is_resource($fp)) {
return $errstr;
}
// Send request
fputs($fp, "GET $path HTTP/1.0\nHost: $host:$port\n\n");
// Skip HTTP-header
while (!feof($fp)) {
$line = fgets($fp, 1024);
if (trim($line) == '') break;
}
// Read body
$body = '';
while (!feof($fp)) { $body .= fgets($fp, 1024); }
fclose($fp);
return $body;
}
print get_url("www.pvv.ntnu.no", "/");
?>
Displaying of error messages
By default php error messages are not shown. For error messages to be shown, make the file .htaccess with the following content:
php_flag display_errors on
php_value error_reporting E_ALL
The file must be made in the catalog of the script that is to be run.