{"id":1011,"date":"2018-01-09T07:23:24","date_gmt":"2018-01-09T06:23:24","guid":{"rendered":"http:\/\/www.retro-lab.nl\/?page_id=1011"},"modified":"2020-07-18T11:35:44","modified_gmt":"2020-07-18T10:35:44","slug":"serverinrichting","status":"publish","type":"page","link":"http:\/\/www.retro-lab.nl\/?page_id=1011","title":{"rendered":"Serverinrichting"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-761 alignright\" src=\"http:\/\/www.retro-lab.nl\/wp-content\/uploads\/raspberry-pi-3-behuizing.jpeg\" alt=\"\" width=\"400\" height=\"290\" \/><\/p>\n<p>Deze website wordt in z&#8217;n geheel vanaf een Raspberry Pi 3 geserveerd. Deze Pi is voorzien van een 32GB micro-sd kaartje met hierop een Raspbian\/Debian distro, mySQL, PHP, Apache webserver en WordPress.<\/p>\n<h3>Technische constructie<\/h3>\n<p>De Pi is met een ethernetkabel verbonden met het internet. De server bestaat uit de volgende onderdelen:<\/p>\n<ul>\n<li>Raspberry Pi 3 Model B+<\/li>\n<li>Raspberry Pi 3 behuizing<\/li>\n<li>Raspberry Pi netvoeding<\/li>\n<li>Samsung 32 GB micro-SD geheugenkaartje<\/li>\n<\/ul>\n<h3>WordPress<\/h3>\n<p>Er wordt gebruik gemaakt van een standaard Nederlandstalige WordPress installatie, met hierop de volgende uitbreidingen en wijzigingen:<\/p>\n<ul>\n<li>Template Chronos<\/li>\n<li>Custom field <code>year<\/code> toegevoegd, die voor ieder bericht met een vier-cijferig jaartal wordt gevuld<\/li>\n<li>Aanpassing aan de <code>get_the_title()<\/code>\u00a0in <code>post-template.php<\/code>, zodat het jaar aan de titel van iedere post wordt toegevoegd<\/li>\n<li>Plugin Featured Image Pro<\/li>\n<\/ul>\n<h3>Aanpassing aan de <code>get_the_title()<\/code><\/h3>\n<p>De aanpassing in <code>get_the_title()<\/code> zorgt ervoor dat op iedere plaats waar de titel van een bericht wordt getoond, het jaartal uit de custom field\u00a0<code>year<\/code>\u00a0aan de titel wordt vastgeplakt:<\/p>\n<pre>\t\/**\n\t * Added by Rudi Niemeijer for the Retro-Lab.nl website\n\t * Shows the value of custom field 'year' after the title, if not empty\n\t*\/\n\t$post_year = get_post_meta($id, 'year', true);\n\tif ($post_year) {\n\t\t$title = $title . ' (' . $post_year . ')';\n\t} \n<\/pre>\n<p>De aanpassing wordt in de functie <code>get_the_title()<\/code>, te vinden in <code>.\/wp-includes\/post-template.php<\/code>, gelijk na de initialisatie van <code>$post<\/code>, <code>$title<\/code> en <code>$id<\/code> ingevoegd.<\/p>\n<h3>Backupscript<\/h3>\n<p>Het backupscript maakt gebruik van het <code>dropbox_uploader.sh<\/code> shellscript van <a href=\"https:\/\/github.com\/andreafabrizi\/Dropbox-Uploader\">Andrea Fabriz<\/a>. Download dit script eerst. Het onderstaande shellscript gebruik ik om dagelijks de database en WordPress bestanden te comprimeren en vervolgens op Dropbox veilig te stellen:<\/p>\n<pre>#!\/usr\/bin\/env bash\nBACKUP_SRC=\"\/home \/var\/www \/etc \/root \/tmp\/databases.sql\"\nBACKUP_EXCLUDE=\"~\/Downloads\"\nBACKUP_DST=\"\/var\/backups\/$(date +\"%Y\")\"\nDROPBOX_DST=\"\/Backup\/$(date +\"%Y\")\"\nMYSQL_SERVER=\"127.0.0.1\"\nMYSQL_USER=\"mijn mySQL gebruiker\"\nMYSQL_PASS=\"mijn mySQL wachtwoord\"\n\nNOW=$(date +\"%Y.%m.%d\")\nDESTFILE=\"$BACKUP_DST\/$NOW.tgz\"\n\necho -e \"Backing up MySQL databases\"\nmysqldump -u $MYSQL_USER -h $MYSQL_SERVER -p$MYSQL_PASS --all-databases &gt; \"\/tmp\/databases.sql\"\n\necho -e \"Archiving folders\"\nsudo mkdir -p $BACKUP_DST\nsudo tar -zcf \"$DESTFILE\" --exclude=\"$BACKUP_EXCLUDE\" $BACKUP_SRC\n\necho -e \"Uploading archive to DropBox\"\n~\/dropbox_uploader.sh upload \"$DESTFILE\" \"$DROPBOX_DST\/$NOW.tgz\"\n\necho -e \"Cleaning up\"\nsudo rm -f \/tmp\/databases.sql\nsudo rm -f $DESTFILE<\/pre>\n","protected":false},"excerpt":{"rendered":"<p> &hellip;<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1011","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=\/wp\/v2\/pages\/1011","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1011"}],"version-history":[{"count":17,"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=\/wp\/v2\/pages\/1011\/revisions"}],"predecessor-version":[{"id":3053,"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=\/wp\/v2\/pages\/1011\/revisions\/3053"}],"wp:attachment":[{"href":"http:\/\/www.retro-lab.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1011"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}