Install Wordpress on SUSE: Difference between revisions

From Jwiki
Line 63: Line 63:


== Install ==
== Install ==
# Download latest Wordpress:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Line 68: Line 70:
</syntaxhighlight>
</syntaxhighlight>


# Extract it:
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
tar -xzvf /tmp/latest.tar.gz
tar -xzvf /tmp/latest.tar.gz
</syntaxhighlight>
</syntaxhighlight>
# Move and rename the directory:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">

Revision as of 09:44, 29 August 2024

Prequisites

1. Install Apache:

zypper install -y apache2
echo '<html><body><h1>It works!</h1></body></html>' > /srv/www/htdocs/index.html
echo -e '<VirtualHost *:80>\nDocumentRoot /srv/www/htdocs\n</VirtualHost>' > /etc/apache2/vhosts.d/_default.conf
mkdir /srv/www/vhosts/
chown -R wwwrun:www /srv/www/
chmod 775 -R /srv/www/
systemctl enable apache2
systemctl start apache2

2. Install PHP:

zypper install -y php8 php-mysql php8-gd php8-mbstring apache2-mod_php8 php8-exif php8-fileinfo
a2enmod php8
systemctl restart apache2


3. Install MariaDB:

zypper install -y mariadb mariadb-client
systemctl enable mariadb 
systemctl start mariadb
CREATE DATABASE `example.com`;
CREATE USER 'example.com'@localhost IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON  `example.com`.* TO 'example.com'@'localhost';
FLUSH PRIVILEGES;

4. Install PhpMyAdmin (optional):

zypper install -y phpMyAdmin


Install

  1. Download latest Wordpress:
curl http://wordpress.org/latest.tar.gz -o /tmp/latest.tar.gz


  1. Extract it:
tar -xzvf /tmp/latest.tar.gz
  1. Move and rename the directory:
mv /tmp/wordpress /srv/www/vhosts/example.com
cp -p /srv/www/vhosts/example.com/wp-config-sample.php /srv/www/vhosts/example.com/wp-config.php
vi /srv/www/vhosts/example.com/wp-config.php


cat > /etc/apache2/vhosts.d/example.com.conf << EOF
<VirtualHost *:80>
    ServerName example.com
    ServerAlias www.example.com

    DocumentRoot /srv/www/vhosts/example.com

    <Directory /srv/www/vhosts/example.com>
        Options FollowSymLinks
        AllowOverride Limit Options FileInfo
        DirectoryIndex index.php
        Require all granted
    </Directory>

    <Directory /srv/www/vhosts/example.com/wp-content>
        Options FollowSymLinks
        Require all granted
    </Directory>
</VirtualHost>
EOF
systemctl reload apache2

Final steps

Sources