WordPress julkaisualusta
Viikon harjoitustehtäviksi valitsin:
- Asenna WordPress, aloita tyhjältä koneelta (vagrant tai liveromppu).Ota järkevät URLit (permalinks) käyttöön. Vaihda teema. Kirjoita esimerkkiartikkeli ja varmuuskopioi sisältö.
- Suojaa kone tulimuurilla.
- Tee WordPressiin oma teema
Tehtävässä käytin koulun kannettavaa tietokonetta:
malli HP EliteBook-2560p
suoritin Intel i5-2450M 2.50 GHz
muisti 7.71 GiB
kovalevy 465.8 GiB
käyttöjärjestelmä Ubuntu 12.10
Aloitus puhtaalta pöydältä
Käytin kurssin alussa suositeltua Xubuntu 12.10 käyttöjärjestälmänä tähän asti. Olin tyytyväinen live usb:n toimintaan, paitsi usb-tikun luonnin yhteydessä asetin usb:n muistamaan live käytön aikana tehdyt muutokset usb:n muistille. Harjoitusten edetessä usb:lle tallentui mm. apache ja siihen tehdyt muutokset, joten en enään pystynyt aloittamaan puhtaasti alusta joka kerta.
Latausosoite: http://www.ubuntu.com/start-download?distro=desktop&bits=64&release=latest
Asennuksessa käytin Xubuntun työkalua Startup Disk Creator (usb-creator-kde).
Asennus oli pitkälle automatisoitu, valitsin asetuksista live usb:n asetuksien tyhjentymään sammutuksen yhteydessä.
Päätin asentaa tikulle Ubuntu 12.10 käyttöjärjestelmän, jossa on enemmän ominaisuuksia. Ubuntu on myös graafisesti näyttävämpi, joka kuluttaa myös enemmän resursseja.
Asensin siis Ubuntu 12.10 julkaisun, asennus oli lähes identtinen Xubuntun asennuksen kanssa.

Asennuksen jälkeen suoritin terminaalissa komennot:
sudo apt-get update
sudo apt-get upgrade
päivittääkseni käyttöjärjestelmän.
LAMP
Seuraavaksi asensin sisällönhallintajärjestelmiä varten LAMP-alustan eli Linux, Apache, MySql, PHP.
Apache
Apachen asensin jo tutulla komennolla
sudo apt-get install apache2
ja otin käyttäjien kotihakemistot apachen käyttöön komennolla
sudo a2enmod userdirapache piti vielä käynnistää uudelleen, jotta asetukset tulevat voimaan:
sudo service apache2 restart
MySql
Tietokantaa varten tarvitaan MySql, jonka asensin komennolla:
sudo apt-get install mysql-serverseuraavaksi asennus kysyi salasanaa MySql root-käyttäjälle

Annoin vahvan salasanan; isoja sekä pieniä kirjaimia, numeroita ja erikoismerkkejä.
Avasin MySql:n root käyttäjänä tehdäkseni uuden käyttäjän sekä tietokannan:
mysql -u root -p
Tein tietokannan worpressiä varten mysql komennolla:
create database db_jukka;
Tein tietokantaa varten uuden MySql käyttäjän, jolle annoin oikeudet kyseiseen tietokantaan:
grant all on db_jukka.* to u_jukka@localhost identified by “annoin_vahvan_salasanan”;
PHP
Aloitin asennuksen komennolla
sudo apt-get install php5
Php:n suoritus tulee ottaa vielä erikseen apachen käyttöön kotihakemistoissa muokkaamalla /etc/apache2/mods-available/php5.conf tiedostoa. Kommentoimalla punaiset rivit pois käytöstä #-merkeillä.
<IfModule mod_php5.c>
<FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
# To re-enable php in user directories comment the following lines
# (from <IfModule ...> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
# <IfModule mod_userdir.c>
# <Directory /home/*/public_html>
# php_admin_value engine Off
# </Directory>
# </IfModule>
</IfModule>
Tein kansion public_html kotihakemistooni komennolla:
mkdir public_html
hakemistoon tein testitiedoston:
nano test.php
sisällöksi:
<?php phpinfo(); ?>
WordPress asennus
Aloitin lataamalla asennustiedoston osoitteesta: http://wordpress.org/latest.tar.gz
Purin tiedoston kansioon komennolla:
tar -xvf wordpress-3.5.1.tar.gz -C /home/jukka/public_html
Komennon tar valinta x purkaa tiedoston, valinta v listaa puretut tiedostot ja valinta f määrittää purettavan tiedostonimen. Valinta -C purkaa tiedoston määrättyyn polkuun.
Avasin selaimella wordpress kansion:
http://localhost/~jukka/wordpress/
Selaimeen tuli vain virheilmoitus:
Your PHP installation appears to be missing the MySQL extension which is required by WordPress.
Olin unohtanut asentaa php moduulin MySql varten, asensin puuttuvan osan komennolla:
sudo apt-get install php5-mysql
Aloitin asennuksen painamalla Create a Configuration File

Seuraavaksi aukesi ikkuna, johon syötin tekemäni tietokannan tiedot:

Seuraavassa ikkunassa kerrottiin ettei ohjattu asennus onnistunut, vaan asetustiedosto piti tehdä manuaalisesti.

Tein tiedoston nanolla asennuskansioon:
nano wp-config.php
tiedoston sisällöksi kopioin ikkunassa olleen tekstin.
Seuraavaksi pyydettiin uuden tilin perustiedot:

WordPress asentui onnistuneesti!

Permalink
Muokkasin linkkien muodostuksen määräytymään blogimerkinnän otsikon mukaan.
Valitsin settings valikosta kohdan permalinks ja valitsin kohdan post name:

Blogimerkintä
Blogimerkinnän tein valikosta posts -> add new.
Otsikoksi kirjoitin Testi ja sisällöksi testi.

Blogimerkintää ei kuitenkaan päässyt katsomaan, apache antoi 404-virheen; sivua ei löydy.
Wordpress sivu neuvoi luomaan .htaccess tiedoston wordpress kansion juureen, tein sen komennolla:
nano .htaccess
sisällöksi:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /~jukka/wordpress/
RewriteRule ^index\.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /~jukka/wordpress/index.php [L]
</IfModule>
Temppu ei kuitenkaan tehonnut.
Tutkittuani ongelmaa lisää havaitsin että rewrite moduuli pitää vielä ottaa apachen käyttöön. Moduuli oli kansiossa /etc/apache2/mods-available, jonka kopioin kansioon mods-enabled komennolla:
sudo cp rewrite.load /etc/apache2/mods-enabled/
ja käynnistin apachen uudelleen:
sudo service apache2 restart
Teeman luonti
Teeman luontiin löytyi loistava ohje: http://www.siteground.com/tutorials/wordpress/wordpress_create_theme.htm
WordPressin teemat on kansiossa wordpress/wp-content/themes.
Aloitin luomalla kansioon themes kansion oma_teema.
mkdir oma_teema
Teema koostuu tiedostoista, jotka määräävät teeman ulkoasun.
header.php
index.php
sidebar.php
footer.php
style.css
Ne tein nanolla kansioon oma_teema.
Sisällöksi tehtyihin php ja css tiedostoihin kirjoitin:
header.php
<html>
<head>
<title>Tutorial theme</title>
<link rel=”stylesheet” href=”<?php bloginfo(‘stylesheet_url’); ?>”>
</head>
<body>
<div id=”wrapper”>
<div id=”header”>
<h1>HEADER</h1>
</div>
index.php
<?php get_header(); ?>
<div id=”main”>
<div id=”content”>
<h1>Main Area</h1>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<h4>Posted on <?php the_time(‘F jS, Y’) ?></h4>
<p><?php the_content(__(‘(more…)’)); ?></p>
<hr>
<?php endwhile; else: ?>
<p><?php _e(‘Sorry, no posts matched your criteria.’); ?></p>
<?php endif; ?>
</div>
<?php get_sidebar(); ?>
</div>
<div id=”delimiter”></div>
<?php get_footer(); ?>
sidebar.php
<div id=”sidebar”>
<h2><?php _e(‘Categories’); ?></h2>
<ul>
<?php wp_list_cats(‘sort_column=name&optioncount=1&hierarchical=0′); ?>
</ul>
<h2><?php _e(‘Archives’); ?></h2>
<ul>
<?php wp_get_archives(‘type=monthly’); ?>
</ul>
</div>
footer.php
<div id=”footer”>
<h1>FOOTER</h1>
</div>
</div>
</body>
</html>
style.css
body {
text-align: center;
}
#wrapper {
display: block;
border: 1px #a2a2a2 solid;
width:90%;
margin:0px auto;
}
#header {
border: 2px #a2a2a2 solid;
}
#content {
width: 75%;
border: 2px #a2a2a2 solid;
float: left;
}
#sidebar {
width: 23%;
border: 2px #a2a2a2 solid;
float: right;
}
#delimiter {
clear: both;
}
#footer {
border: 2px #a2a2a2 solid;
}
.title {
font-size: 11pt;
font-family: arial;
font-weight: bold;
}
Teeman käyttöönotto
Otin uuden teeman käyttöön valikosta Appearance -> Themes

Valitsin juuri tehdyn oma_teema:n (save & activate).
Joka oli todella esteettinen:

Varmuuskopiointi
Varmuuskopioin WordPress blogin sisällön (all content).
Valitsin valikosta Tools -> export -> Download Export File

Ladatun xml tiedoston pystyy palauttamaan Tools valikon Import kohdasta.
Palomuuri
Tarkistin käyttöjärjestelmän palomuurin tilan komennolla:
sudo ufw status verbose
vastaukseksi tuli
Status: inactive
Otin palomuurin käyttöön komennolla
sudo ufw enable
vastaukseksi tuli
Firewall is active and enabled on system startup
Palomuuri esti nyt kaiken tulevan liikenteen.
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
Halusin sallia saapuvat ssh ja http yhteydet, sillä harjoituksessa kyseessä oli web-palvelin. Yhteydet sallin komennoilla:
sudo ufw allow http
sudo ufw allow ssh
Palomuurin tila oli nyt:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
To Action From
– —— —-
22 ALLOW IN Anywhere
80 ALLOW IN Anywhere
22 ALLOW IN Anywhere (v6)
80 ALLOW IN Anywhere (v6)
Työ
Tehtävien tekemiseen meni aikaa n. 8 tuntia.


Reblogged this on anthonyvenable110.