Synology-Forum.nl
Overige software => Web Station => Topic gestart door: pacecal op 06 februari 2019, 12:06:47
-
Het is mogelijk om per gebruiker een basis map aan te maken en personal homepage via Web Station.
Nu ben ik opzoek naar het volgende. Ik wil gebruikers een platform geven voor hun php-website i.c.m. een PhpMyAdmin database. Kan ik dit op gebruikersniveau inrichten?
De personal homepage zorgt per gebruiker wel voor een www-map. Maar hoe dan verder?
-
Er bestaat niet zoiets als een phpMyAdmin database.
Dat is gewoon een front om de MariaDB server te benaderen. Elke front kan je gebruiken, zoals MySQL workbench, Sequel Pro, Heidi.
Zelf gebruik ik : https://www.adminer.org/ voor het web. Een (1) bestand dat je overal kan neerplempen.
Om de gebruiker toegang te geven tot zijn eigen database, maak als root een database aan en een gebruiker met eigen rechten voor die database.
MariaDB 5 gebruikt port 3306.
Je verbindt met de database als : localhost
MariaDB 10 gebruikt port 3307.
Je verbindt met de database als : 127.0.0.1:3307
Als een terzijde. Om de ~ te vermijden in
http://diskstation.local/~gebruiker
en ipv daarvan te gebruiken :
http://diskstation.local/gebruiker
heb ik Personal webpage uitgeschakeld en in de web map een symbolic link naar de www map in de thuismap van de gebruiker gemaakt.
Zo :
ln -s /volume1/homes/gebruikersnaam/www gebruiker
Als je een eigen domeinnaam hebt en je wilt dan dit gebruiken :
http://gebruiker.domein.nl/
moet je eerst een map aanmaken in de web map, dan een Virtual Host aanmaken en die map kiezen, vervolgens die map verwijderen en een symbolic link aanmaken met dezelfde naam.
De gebruiker kan dan net zoveel klooien in zijn www map als ie blieft. Zelfs WordPress installeren.
-
Hartelijke dank voor deze input. Het gebruik van een personal webpage is dus niet nodig.
-
Het is mogelijk om per gebruiker een basis map aan te maken en personal homepage via Web Station.
Is dat niet gewoon een kruisje zetten in WebStation? Die optie is wel ergens.
-
Die optie is er zeker, er wordt dan per gebruiker een www map aangemaakt...maar dan?
-
Maar dan?
Stop een webpagina in die map. Te beginnen met index.html of index.php
-
Ook php? werkt dat dan? Het lastige is dat ik geen virtual host kan aanmaken naar de lokale map van de gebruiker (www).
-
Waarom vragen als je het proefondervindelijk kunt vaststellen.
En hoe je een Virtual Host naar een www map maakt heb ik hierboven beschreven.
Gisteren nog uitgeprobeerd en verdomd, het werkt.
-
Bij het aanmaken van een virtual host moet je de doellocatie selecteren. Je kan hier helaas niet de map homes zien.
-
Nogmaals, lees de eerdere uitleg.
-
Ja, nogmaals bedankt. Het werkt perfect !
De symbolic link doet de truc!
-
Maar nu komt het. Wanneer ik het onderstaande in een index.php zet gebeurd er niets, behalve dan de tekst "Team 1". Ook niet wanneer ik de inloggegevens van de root gebruik. Ik vermoed dat dit te maken heeft met de vermelding van de host.
<!DOCTYPE html>
<html lang="nl">
<head>
<meta charset="utf-8">
<title>De klanten van de winkel</title>
</head>
<body>
<?php
echo "Team 1";
// Maken van verbinding
$db = new PDO("mysql:host=localhost;dbname=dbTest","Test", "Wachtwoord");
// De code hieronder is om eventuele foutmeldingen
// weer te geven
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Dan komt hier de code waarin je gebruik maakt van
// de database
$sql = "SELECT achternaam FROM klanten";
$resultaat = $db->query($sql);
foreach($resultaat as $row) {
echo $row['achternaam'].'<br>';
}
// Sluiten van verbinding
$db = NULL;
?>
</body>
</html>
-
Als je MariaDB10 gebruikt, zet dit in de connect regel ipv localhost
host=127.0.0.1:3307
Verder zou ik wat testjes inbouwen of de verbibding geslaagd is en of er wat opgehaald is.
-
Helaas werkt dat niet. Heeft dit mss te maken met de rechten op de map homes/gebruiker/www ?
Failed to load resource: the server responded with a status of 404 (Not Found)
Wat moet ik opgeven bij de servernaam voor de nieuwe gebruiker? % of localhost?
-
404 wil zeggen dat een bestand niet bestaat.
En login als gebruiker Test met phpMyAdmin en kijk wat die gebruiker mag/kan doen.
-
toen ik dit opgaf: host=127.0.0.1:3307 kreeg ik de fout 404.
Ik probeer het eerst met mijn root account om zeker te zijn dat het niet account gebonden is. Ook met mijn root account gebeurd er niets.
Ik heb nog even gekeken naar de virtual host instellingen, maar of ik nginx gebruik of apache. Ook dat maakt niets uit.
Opvallend is wel wanneer ik de php info genereer dat 3306 de standaard port is.
-
Okej, dit was dus idd het juiste adres: 127.0.0.1:3307
Bij de virtual host had ik nog de php settings moeten aanpassen: aanvinken mysql en pdo_mysql.
Ik ben hier achter gekomen om beiden settings te vergelijken. Het zou mooi zijn wanneer je de php settings van de web station kan importeren naar de virtual host.
-
Kun je me helpen met aanvinken mysql en pdo_mysql ?
-
Webstation > PHP Settings > Edit 'PHP Profile' > General Settings : Extensions