Do you find this page interesting or helpful? Do you have
comments or suggestions or corrections? If so please post a comment to this blog article.
Steps to
construct a Wordpress site on a Synology box
You can use a Wordpress “package” on Synology, but if you do,
you can only set up one Wordpress package on the box. Suppose you want
to set up multiple Wordpress sites on the Synology box. Then you need
to do it yourself. Here are the steps. You will repeat these steps for
each of the Wordpress sites that you are setting up.
This tutorial assumes:
- you already know how to use Wordpress generally
- you already know generally how to administer a Synology box
including these skills:
- how to install packages on the Synology box
- how to create users and pick their permissions
- how to FTP files onto the box
- how to edit files
- how to use Synology Web Station to configure web sites
- how
to use Control-Panel/Security/Certificates/Letsencrypt on the Synology
box to implement SSL for a web site on the Synology box
- you already know how to register a domain name and how to
set up DNS someplace for a domain name of your choice
Generally what you need to do is the following.
- Make sure your Synology box has the most recent version of DSM
- If you have not already done so, install the following to the Synology box:
- Apache (probably
version 2.4)
- install MariaDB (probably version 10)
- Pick (register) a domain name for the new site
- You will need DNS hosting somewhere
- maybe the DNS hosting is provided by the domain
name registration service provider
- maybe you are doing the DNS hosting on your
Synology box
- Set up DNS for the domain name to point to the Synology box
- for example if the box is called
"synology-2.something.com" and if the blog will be "blog.something.com"
- then you will want to set up a CNAME so that "blog"
maps to "synology-2.something.com"
- Create a subfolder for the web site
- Create a user which will be an FTP user for the folder. The
user needs to have read/write permissions to the folder
- Make sure that the http user has “write” permissions for
the web folder
- go into file station pick the web folder, right-click
on “properties”,
- click on “permission”,
- find user “http”
- right now the http user has only “read” permissions,
- you need to add “write” permissions
- Set up Web Station so that it maps that domain name to that
subfolder.
- Click on “virtual host” and “create”
- and the web site will be “name-based”
- in the “document root” browse to and select the
subfolder
- pick a back-end server (probably Apache 2.4)
- pick a PHP version (probably PHP 7.0)
- click okay
- obtain an SSL certificate for the domain name
- go to control panel/security/certificate
- click add
- pick "add a new certificate" and next
- get a certificate from letsencrypt and next
- enter the domain name for the wordpress site, enter an email, apply
- now you have the SSL certificate from Letsencrypt
- click on configure
- find
the service which is the domain for the wordpress site, to the right is
the certificate it will use which is certainly incorrect
- use the drop-down for the certificate and find the new SSL certificate that you just now created, and pick it, and click OK
- Obtain the standard Wordpress install package
- unzip it
- FTP the entire Wordpress package to the subfolder
- Using PHPmyadmin, create a database in the MariaDB system
- the default login is “root” and a blank password
- probably the password will be screwed, if so:
- run the MariaDB app, click on “change MariaDB password”
- leave the password field blank
- click on “reset MariaDB password”
- now you can run PHPmyadmin
- create a database for the wordpress instance
- Run the Wordpress software by visiting the web page
https:// and domain name slash wp-admin
- it will ask you for a database name, database user name,
database password, database host, the table prefix
- the database name is easy, it is the database that you just
created
- he user name might be “root”
- the password might be blank
- the host is probably “localhost” which you can leave as the
default
- leave the default table prefix of “wp_” the way it is
- you might encounter “Sorry, but I can’t write the
wp-config.php file.”
- if so, go back and give the http user write access as
instructed above, then go back and try again
- now you need to do the wordpress install
- specify the site title
- pick a user name maybe “admin”
- pick a password
- enter your email
- click “install wordpress”
- You reach the Dashboard “welcome to wordpress”.
- Now you have a “wp-config.php” file, right?
- Open it using the editor in Synology file station
- recall the FTP user and password which you created earlier
- add the following four lines in the “wp-config” file:
- define( 'FTP_USER', 'ftp-user-name-goes-here' );
- define( 'FTP_PASS', 'ftp-user-password-goes-here' );
- define( 'FTP_HOST', '127.0.0.1' );
- define( 'FTP_SSL', true );
- save the file
- create a couple of administrators on the Wordpress site
- Typical plug-ins
- Google authentication
- Jetpack
- Akismet
- test the instance of Wordpress
- visit the web page like a normal user
- visit the web site again using "https://"
- you should see the normal first default wordpress web
site
- visit the “wp-admin” page using https://
- you should be able to “add” a new theme without having
to enter an FTP user ID or password
- you should be able to “add” a new plugin without having
to enter an FTP user ID or password