Difference between revisions of "WordPress"

From Earlham CS Department
Jump to navigation Jump to search
(WordPress Setup)
(WordPress Setup)
(5 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
===  WordPress Setup ===
 
===  WordPress Setup ===
1. Unzip the file and name it “wordpress-sitename”
+
1. cd to /var/www/ and unzip the file and name it “wordpress-sitename”
  
* tar -xvzf wp_download.tar.gz // This file lies in /var/www
+
  >> cd /var/www/
* mv wordpress/  wordpress-sitename
+
  >> tar -xvzf wp_download.tar.gz
 +
  >> mv wordpress/  wordpress-sitename
  
2. Create a mysql database with the name “wp_sitename”
+
2. Create a mysql database with the name “wp_sitename” and give “wpadmin” access to it:
  
* mysql -u root -p    // You will need the password
+
  >> mysql -u root -p    // You will need the password
* MariaDB [(none)]> create database wp_sitename;
+
  MariaDB [(none)]> create database wp_sitename;
* MariaDB [(none)]> exit
+
  // '''you will need to enter the password of user wpadmin in place of wp_pass '''
 +
  MariaDB [(none)]> grant all privileges on wp_sitename.* to 'wpadmin'@'localhost' identified by 'wp_pass'; 
 +
  MariaDB [(none)]> flush privileges;
 +
  MariaDB [(none)]> exit
  
 
3. Rename the config file and edit it
 
3. Rename the config file and edit it
* cd wordpress-sitename/
 
* mv wp-config-sample.php wp-config.php
 
* vi wp-config.php // Here you will be editing the Mysql settings
 
  
You will need the name of the database, username (root or wpadmin should work) and the corresponding password:
+
  >> cd wordpress-sitename/
 +
  >> mv wp-config-sample.php wp-config.php
 +
  >> vi wp-config.php // Here you will be editing the Mysql settings
 +
 
 +
You will need the name of the database, username (use wpadmin as you have already granted it privileges) and the corresponding password:
  
 
The edited version should look like:
 
The edited version should look like:
  
* // ** MySQL settings - You can get this info from your web host ** //
+
  // ** MySQL settings - You can get this info from your web host ** //
* /** The name of the database for WordPress */
+
  /** The name of the database for WordPress */
* define('DB_NAME', 'wp_sitename');
+
  define('DB_NAME', 'wp_sitename');
* /** MySQL database username */
+
  /** MySQL database username */
* define('DB_USER', username);
+
  define('DB_USER', username);
* /** MySQL database password */
+
  /** MySQL database password */
* define('DB_PASSWORD', password);
+
  define('DB_PASSWORD', password);
* /** MySQL hostname */
+
  /** MySQL hostname */
* define('DB_HOST', 'localhost');
+
  define('DB_HOST', 'localhost');
* /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8');
+
  /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8');
* /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', '');
+
  /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', '');
  
 
Everything else in this file should remain the same.
 
Everything else in this file should remain the same.
  
 
* You can also view similar files to make sure the config file is setup properly, and copy the username and password for database from there.
 
* You can also view similar files to make sure the config file is setup properly, and copy the username and password for database from there.
* view ../wordpress-datascience/wp-config.php
+
  >> view ../wordpress-datascience/wp-config.php
  
 
4. Change owner and permissions
 
4. Change owner and permissions
* chown -R www-data:www-data wordpress-sitename/
+
 
* chmod -R 755 wordpress-sitename/
+
  >> chown -R www-data:www-data wordpress-sitename/
* mkdir -p /var/www/wordpress-sitename/wp-content/uploads
+
  >> chmod -R 755 wordpress-sitename/
* chown -R :www-data /var/www/wordpress-sitename/wp-content/uploads/
+
  >> mkdir -p /var/www/wordpress-sitename/wp-content/uploads
 +
  >> chown -R :www-data /var/www/wordpress-sitename/wp-content/uploads/
  
 
5. Setting up the website and ssl cert
 
5. Setting up the website and ssl cert
* cd /etc/apache2/sites-available/
+
 
* cp datascience.cs.earlham.edu-ssl.conf sitename.cs.earlham.edu-ssl.conf
+
  >> cd /etc/apache2/sites-available/
 +
  >> cp datascience.cs.earlham.edu-ssl.conf sitename.cs.earlham.edu-ssl.conf
 
* Edit the .conf file and change the word datascience to your sitename
 
* Edit the .conf file and change the word datascience to your sitename
 
   >> vi sitename.cs.earlham.edu-ssl.conf
 
   >> vi sitename.cs.earlham.edu-ssl.conf
Line 54: Line 61:
  
 
6. Enable the site
 
6. Enable the site
* a2ensite sitename.cs.earlham.edu-ssl.conf b. service apache2 reload
+
 
* service apache2 restart
+
  >> a2ensite sitename.cs.earlham.edu-ssl.conf   // If this doesn't work, please talk to a sys-admin 
This will enable the website - ask admins to create DNS entry
+
  >> service apache2 reload
 +
  >> service apache2 restart
 +
 
 +
'''This will enable the website - ask admins to create DNS entry'''
  
 
7. Install WordPress and enjoy!
 
7. Install WordPress and enjoy!

Revision as of 18:46, 28 November 2016

This is how to create a WordPress site. Assumes you have permissions on the CS web server (see admins if not).

WordPress Setup

1. cd to /var/www/ and unzip the file and name it “wordpress-sitename”

 >> cd /var/www/
 >> tar -xvzf wp_download.tar.gz
 >> mv wordpress/  wordpress-sitename

2. Create a mysql database with the name “wp_sitename” and give “wpadmin” access to it:

 >> mysql -u root -p    // You will need the password
 MariaDB [(none)]> create database wp_sitename;
 // you will need to enter the password of user wpadmin in place of wp_pass 
 MariaDB [(none)]> grant all privileges on wp_sitename.* to 'wpadmin'@'localhost' identified by 'wp_pass';  
 MariaDB [(none)]> flush privileges; 
 MariaDB [(none)]> exit

3. Rename the config file and edit it

 >> cd wordpress-sitename/
 >> mv wp-config-sample.php wp-config.php
 >> vi wp-config.php // Here you will be editing the Mysql settings

You will need the name of the database, username (use wpadmin as you have already granted it privileges) and the corresponding password:

The edited version should look like:

 // ** MySQL settings - You can get this info from your web host ** //
 /** The name of the database for WordPress */
 define('DB_NAME', 'wp_sitename');
 /** MySQL database username */
 define('DB_USER', username);
 /** MySQL database password */
 define('DB_PASSWORD', password);
 /** MySQL hostname */
 define('DB_HOST', 'localhost');
 /** Database Charset to use in creating database tables. */ define('DB_CHARSET', 'utf8');
 /** The Database Collate type. Don't change this if in doubt. */ define('DB_COLLATE', );

Everything else in this file should remain the same.

  • You can also view similar files to make sure the config file is setup properly, and copy the username and password for database from there.
 >> view ../wordpress-datascience/wp-config.php

4. Change owner and permissions

 >> chown -R www-data:www-data wordpress-sitename/
 >> chmod -R 755 wordpress-sitename/
 >> mkdir -p /var/www/wordpress-sitename/wp-content/uploads
 >> chown -R :www-data /var/www/wordpress-sitename/wp-content/uploads/

5. Setting up the website and ssl cert

 >> cd /etc/apache2/sites-available/
 >> cp datascience.cs.earlham.edu-ssl.conf sitename.cs.earlham.edu-ssl.conf
  • Edit the .conf file and change the word datascience to your sitename
 >> vi sitename.cs.earlham.edu-ssl.conf
  • Create a link from sites-available to sites-enabled
 >> ln -s sitename.cs.earlham.edu-ssl.conf /etc/apache2/sites-enabled/sitename.cs.earlham.edu-ssl.conf

6. Enable the site

 >> a2ensite sitename.cs.earlham.edu-ssl.conf   // If this doesn't work, please talk to a sys-admin  
 >> service apache2 reload
 >> service apache2 restart

This will enable the website - ask admins to create DNS entry

7. Install WordPress and enjoy!

8. Changing the settings of the page:

  • Go to Settings > Permalinks, and choose the format you would like // For e.g. I chose Post Name as the setting.
  • Click on the Custom setting, and add "/index.php/" before the name setting, such that the setting changes from "/%postname%/" to "/index.php/%postname%/" // for Post Name setting.

9. If you're unable to create a page/post, or upload media, you need to change the permissions again. Repeat step 4 for changing permissions and owners.