By default Ghost uses sqlite3 database. Still, if you would like to have your Ghost Blog installed and configured with MySQL database you can reconfigure the default settings in the config.js file following this guide.
Further reading:
Basic Features of the Ghost CMS
Ghost Backup and Restore Tutorial
Ghost advanced script integration
How to migrate your website from WordPress to Ghost
How to Configure Ghost with MySQL
Login your server via SSH and navigate to your Ghost root directory. If you have followed our Ghost and Node installation guide your Ghost directory should be under /var/www/ghost.
Open config.js file using your favorite text editor and locate the Production environment settings which should be somewhere around line 43.
You will need to replace the following lines:
database: {
client: 'sqlite3',
connection: {
filename: path.join(__dirname, '/content/data/ghost2.db')
},
with your MySQL configuration using the following syntax:
database: {
client: 'mysql',
connection: {
host: 'localhost',
user: 'database-user',
password: 'database-user-password',
database: 'database-name',
charset: 'utf8'
Remember to replace database host, database-user, database-user-password and database-name with your actual settings. After that, you can continue with the Ghost Installation process.
Further reading:
Basic Features of the Ghost CMS
Ghost Backup and Restore Tutorial
Ghost advanced script integration
How to migrate your website from WordPress to Ghost
Configure Apache proxy for Ghost on cPanel
If you have installed Ghost via Softaculous in the past, most likely your Ghost URL will look like this: https://blog.example.com:62227. The numbers after your domain name represent the Node port which services all requests to your Ghost blog. As Node is a standalone service, it requires a dedicated port different than the standard port 80 used by the Web Server.
Still, this might be very inconvenient for your visitors, and you might want to have your Ghost blog accessible via the standard port 80. To achieve this, you will need to perform a few easy steps on your server to configure the Apache proxy to redirect all requests to your custom Ghost blog installation port.
Further reading:
Basic Features of the Ghost CMS
Ghost Backup and Restore Tutorial
Ghost advanced script integration
How to migrate your website from WordPress to Ghost
We can help
In case you are hosting your Ghost blog on our Ghost Hosting Package, please contact our support team, and we will set this for you in just a few minutes. If you are managing your server on your own, please follow the steps below.
To have your Ghost blog accessed without a port number in the URL, you need to:
Step 1: Create a userdata Directory
Step 2: Create a Proxy Config File
Step 3: Include the Config File in httpd.conf
Create a userdata Directory
First, you will need to create a folder under the "userdata" directory of your Apache web server. That can be done by executing:
mkdir -p /usr/local/apache/conf/userdata/std/2/USERNAME/DOMAIN/
Please replace "USERNAME" with your actual cPanel username and "USERNAME" with your actual domain or subdomain under which Ghost is installed.
Create a Proxy Config File
When the needed folders are created, navigate to your domain userdata directory and create a text file called ghost.conf. The content of the ghost.conf file should be:
ProxyPass / http://127.0.0.1: 62227/
ProxyPassReverse / http://127.0.0.1: 62227/
Please replace the port number 62227 with your actual Ghost port number provided to you during the installation process. When you are ready, save the file and exit the text editor program.
Include the Config File in httpd.conf
Next, you will need to edit your Apache httpd.conf. The exact path to the file is:
/etc/httpd/conf/httpd.conf
You can open the httpd.conf via your favorite text editor and you should search for your domain or subdomain vhost which should look like:
<VirtualHost 192.168.1.30:80>
ServerName blog.example.com
ServerAlias www.blog.example.com
.........
# To customize this VirtualHost use an include file at the following location
# Include "/usr/local/apache/conf/userdata/std/2/example/blog.example.com/*.conf"
</VirtualHost>
Here you should uncomment the last line which includes all .conf files from the directory you have just created. You can do this by removing the '#' sign at the beginning of the line. When you are done, save the file and exit the text editor program.
Now you should restart your Apache web service by executing:
/etc/init.d/httpd restart
After the Apache restart, all requests should be automatically handled by the Apache and redirected internally to the Node custom port. Now you can conveniently access your Ghost blog directly via your URL without the need to include the port number.
If you experienced any difficulties during the process, please contact our support team, and we will configure your Ghost blog for you.
Further reading:
Basic Features of the Ghost CMS
Ghost Backup and Restore Tutorial
Ghost advanced script integration
How to migrate your website from WordPress to Ghost
How to configure your Ghost blog URL
In this tutorial we will show you how to configure your Ghost blog URL and set your domain name. If you have followed our Ghost Installation tutorial your Ghost instance should be located under: /var/www/ghost/. In case you have manually installed Ghost, please enter your Ghost directory and open the config.js file with your favorite text editor.
Locate the Production configuration section which should start around the 43th line of the config.js file with ### Production tag and change the following line:
url: 'http://my-ghost-blog.com',
Replace my-ghost-blog.com with your actual domain name or IP address depending on how you would like to access your Ghost blog.
When you have set your domain name save your changes and exit the text editor. To apply the changes you will need to restart your Ghost. In case you have followed our one-click installation tutorial or you are using Forever you can restart the Ghost process by simply killing the current execution -- it will be automatically restarted by Forever.
To view the process simply use the following command:
[root@ghost ghost]# ps auxf | grep ghost
This will give you the process running Ghost:
root 4200 0.3 7.6 1008668 78240 ? Sl 13:00 0:06 \_ /usr/local/bin/node /var/www/ghost/index.js
The process ID is the first number after the process user -- in this example the process ID is 4200. To stop the process use the process ID with the following command:
[root@ghost ghost]# kill -9 4200
Remember to change the process ID with your actual process ID. Forever should automatically restart your Ghost process.
Further reading:
Basic Features of the Ghost CMS
Ghost Backup and Restore Tutorial
Ghost advanced script integration
How to migrate your website from WordPress to Ghost
How to change your Ghost Port
In this tutorial we will show you how to change your Ghost port. This can be useful if you would like to run your Ghost blog on the standard HTTP port 80 or if you would like to configure it on a different port and leave your main web service handle the request on port 80.
If you have followed our "How to install Ghost with auto-install script" your instance of Ghost should be located under:
/var/www/ghost/
In case you have manually installed Ghost, please enter your Ghost directory and open the config.js file with your favorite text editor.
Locate the Production configuration section which should start around the 43th line of the config.js file with ### Production tag and change this line:
// Port to be passed to node's `net.Server#listen()`, for iisnode set this to `process.env.PORT`
port: '80'
Please change the number in the quotes with the desired port number for your Ghost instance. When you are ready save your changes and exit the text editor. To apply the changes you will need to restart your Ghost. In case you have followed our installation tutorial or you are using Forever you can restart the Ghost process by simply killing the current execution -- it will be automatically restarted by Forever.
To view the process simply use the following command:
[root@ghost ghost]# ps auxf | grep ghost
This will give you the process running Ghost:
root 4200 0.3 7.6 1008668 78240 ? Sl 13:00 0:06 \_ /usr/local/bin/node /var/www/ghost/index.js
The process ID is the first number after the process user -- in this example the process ID is 4200. To stop the process use the process ID with the following command:
[root@ghost ghost]# kill -9 4200
Note
Remember to change the process ID with your actual process ID. Forever should automatically restart your Ghost process. In case you do not use Forever you will need to manually restart your Ghost Node.js instance.
With all of this completed, you now know how to change the port of your Ghost Installation.
Further reading:
Basic Features of the Ghost CMS
Ghost Backup and Restore Tutorial