apt install apache2 mariadb-server php libapache2-mod-php php-cli php-mysql php-zip php-curl php-xml
mysql_secure_installation
Anweisungen befolgen, Passwort setzen, alles andere bestätigen
Dann:
su --login mysql -uroot In mysql: CREATE DATABASE atze; CREATE USER 'atze'@'localhost' IDENTIFIED BY 'awaHg-1'; GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, FILE, INDEX, ALTER, CREATE TEMPORARY TABLES, CREATE VIEW, EVENT, TRIGGER, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON *.* TO 'atze'@'localhost' REQUIRE NONE WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
In datenbank.sql muss eventuell noch der Befehl "USE datenbankname;" eingefügt werden.
su --login mysql -uroot < datenbank.sql
Die Konfiguration liegt unter /etc/apache2
In sites-available liegen sog VirtualHost Direktiven:
Entscheidend sind darin diese Zeilen:
ServerName erste.atz ServerAdmin webmaster@localhost DocumentRoot /home/atze/webseiten/erste
ServerName ist ein gültiger Domainname, DocumentRoot ein Verzeichnis im Dateisystem.
Der Nutzer, der mit dem Code arbeiten soll, muss Schreibrecht auf den Ordner haben.
chown -Rv nutzer:nutzer /var/www/html
Erlaubt nutzer die Arbeit im voreingestellten DocumentRoot
vim /etc/php/7.4/apache/php.ini
Suchen Sie nach "display_errors" und setzen Sie den Wert dahinter auf On
Apache neu starten:
systemctl restart apache2
session_start();
header('Content-Type: text/html; charset=utf-8');
//Erst einmal ein paar Voreinstellungen
$login=false;
$timestamp=time();
if(isset($_GET['out'])){
$_SESSION=array();
}
if (isset($_SESSION['login'])){
if ($_SESSION['login'] === true){
$login=true;
}
}
require ("dbkram.php");
//login abwickeln
if (isset($_POST['login'])){
$user=str_replace("'","",$_POST['nutz']);
$pass=str_replace("'","",$_POST['pass']);
$login = db_checkLogin($user,$pass);
if (!$login){
$loginMessage="<p>Login fehlgeschlagen</p>";
}
else{
$_SESSION['login'] = true;
$loginMessage="<p>Login erfolgreich</p>";
}
}