In deze blog laat ik stap voor stap zien hoe ik dit portfolio heb gebouwd.

 

Installatie van WordPress op een lokale server

Klik hier voor de installatie instructies die ik gevolgd heb. Deze instructies zijn bedoeld voor een raspberry pi. De instructies zijn gelijkaardig voor elk debian gebaseerd besturings-systeem. Het kan wel gebeuren dat bepaalde PPA’s en andere dependencies moeten worden toegevoegd.

 

Installeer Apache

sudo apt-get install apache2 -y

U kunt de installatie van Apache verifiëren door te surfen naar het IP adres van de server http://YOUR-IP-ADDRESS. Het IP adres kan worden gevonden met hostname -I of ifconfig. Volgende standaard pagina zou zichtbaar moeten zijn.

 

Installeer PHP

Vergeet de PPA voor PHP niet toe te voegen!

sudo add-apt-repository ppa:ondrej/php && sudo update

Mogelijks is er intussen een recentere versie van PHP.

sudo apt-get install php7.2 libapache2-mod-php7.2 -y

 

Installeer MySQL

Tijdens de installatie wordt er gevraagd om een wachtwoord in te vullen, onthoud deze voor later.

sudo apt-get install mysql-server php5-mysql -y

Herstart de Apache server.

sudo service apache2 restart

 

Installatie van WordPress

Volgende commando’s downloaden WordPress in de Apache folder en geeft Apache het recht om  deze files te gebruiken en aan te passen.

cd /var/www/html/
sudo rm *
sudo wget http://wordpress.org/latest.tar.gz

sudo tar xzf latest.tar.gz
sudo mv wordpress/* .
sudo rm -rf wordpress latest.tar.gz

sudo chown -R www-data: .

 

WordPress gebruik in de achtergrond een SQL database. In volgende commando’s initialiseren de database voor WordPress.

(Vul hier het opgeslagen wachtwoord van de MySQL installatie in, ga terug uit de MySQL shell met Ctrl + D)

mysql -uroot -p
mysql> create database wordpress;

 

Indien alles goed is verlopen kan de WordPress site nu worden bereikt aan de hand van het IP adres van de server http://YOUR-IP-ADDRESS. Het IP adres kan worden gevonden met hostname -I of ifconfig.

Foto van https://projects.raspberrypi.org/en/projects/lamp-web-server-with-wordpress/9

 

WordPress zal vragen om de MySQL database te initialiseren.

Database Name:      wordpress
User Name:          root
Password:           <YOUR MYSQL PASSWORD>
Database Host:      localhost
Table Prefix:       wp_

 

WordPress staat klaar voor gebruik!

 

Opmerkingen

  • Onder Instellingen - Algemeen moet de url van WordPress worden gewijzigd naar de gewenste domein naam.
  • Wanneer je uw WordPress wachtwoord bent vergeten, voer dan volgende commando’s uit om het wachtwoord te veranderen naar admin:
    mysql -uroot -p
    use wordpress;
    update wp_users set user_pass = "21232f297a57a5a743894a0e4a801fc3" where user_login="YOUR USER NAME";

    21232f297a57a5a743894a0e4a801fc3 stelt de md5 code voor van het wachtwoord admin.

  • Om later verbinding te kunnen maken met JetPack moeten volgende pakketten geïnstalleerd worden voor php7.2:
    sudo apt-get install php7.2-xml php7.2-xmlrpc -y

 

 

Webhosting – Orange Pi Zero

Momenteel draait deze site op een Orange Pi Zero, welke in de grootteorde van €10 kost. Hierop draait een Ubuntu server.

 

Domein naam

Domein naam: https://www.versio.nl/

Dynamic DNS: https://www.dynu.com/

 

Als particulier krijgt men meestal naar de buitenwereld toe geen statisch IP adres. De frequentie waarmee het IP adres verandert hangt af van ISP tot ISP. Om dit te kunnen oplossen is er een DDNS service nodig. Hierbij moet een thuis apparaat op geregelde tijdstippen het huidige IP adres doorsturen naar de DDNS service. Dit gebeurt met DDClient. Wanneer men nu surft naar deze DDNS service verwijst deze de gebruiker door naar het thuis IP adres.

 

Installatie van DDClient

Een meer complete uitleg kan hier gevonden worden.

Eerst moet DDClient worden geïnstalleerd.

sudo apt-get install ddclient -y

Vervolgens moet het configuratie bestand worden aangepast.

sudo nano /etc/ddclient.conf

Hier vult u uw eigen login en paswoord in. Het is veilig om uw paswoord eerst te hashen naar md5 (echo -n <YOUR PASSWORD> | md5sum) Pas ook de hostname aan naar uw eigen hostnaam. Deze kan meerdere records bevatten.

# Configuration file for ddclient generated by debconf
#
# /etc/ddclient.conf

daemon=60                                                    # Check every 60 seconds.
syslog=yes                                                   # Log update msgs to syslog.
mail=root                                                    # Mail all msgs to root.
mail-failure=root                                            # Mail failed update msgs to root.
pid=/var/run/ddclient.pid                                    # Record PID in file.                                      
use=web, web=checkip.dynu.com/, web-skip='IP Address'        # Get ip from server.
server=api.dynu.com                                          # IP update server.
protocol=dyndns2                        
login='<YOUR USERNAME>'                                      # Your username.
password='<YOUR PASSWORD>'                                   # Password or MD5/SHA256 of password.
THOMASDEVOOGDT.BE                                            # List one or more hostnames one on each line.

 

NAT instellen

Nu de externe gebruiker doorverwezen wordt naar het thuis aders, moet de thuis router/modem de gebruiker nog doorverwijzen naar de Orange Pi. Hiervoor moeten er twee zaken worden gedaan:

  1. De Orange Pi een statische IP adres geven.
  2. Poort 80 van de router/modem mappen naar poort 80 van de Orange Pi.

Raadpleeg hiervoor de handleiding van uw ISP.

 

HTTPS

Aan de hand van volgende handleiding kan de site overgezet worden naar HTTPS.

  • Let er op dat ook poort 443 van de router/modem gemapt wordt naar buiten.
  • Onder Instellingen - Algemeen moet de url van WordPress worden gewijzigd naar de gewenste domein naam en het https prefix.
  • Mocht er een melding van gemengde inhoud komen, kijk dan met F12 welke files geserveerd worden over http.