Paul van der Vlis
2023-02-04 21:51:18 UTC
Hoi,
Ik heb een scriptje geschreven om een Wordpress site van een testsite te
kopiëren naar een productie site, met wijziging van de URL.
Met sommige sites functioneert het goed, maar met eentje niet. Daar
missen b.v. delen van de voorpagina zoals menu's.
In de logs vind ik niet veel zinvols.
Volgens mij doe ik alles wat nodig is, zie script onder.
Enig idee wat er zou kunnen zijn als het mis gaat?
Misschien een theme met een soort kopieer beveiliging?
Groet,
Paul
------
#!/bin/bash
set -e # stop on error
read -p "Test site login (bijvoorbeeld test): " test
read -p "Productie site login: (bijvoorbeeld prod): " prod
read -p "Zoek op: (bijvoorbeeld test.site.nl): " zoek
read -p "Vervang door: (bijvoorbeeld www.site.nl): " vervang
if test -e /tmp/$prod; then
mv /tmp/$prod /tmp/$prod-weg # voor als hij bestaat
fi
mkdir /tmp/$prod/
echo "dumpen"
mysqldump -QR $prod > /tmp/$prod/$prod.sql
mysqldump -QR $test > /tmp/$prod/$test.sql
echo "database corrigeren"
sed -i -e "s/$zoek/$vervang/g" /tmp/$prod/$test.sql
cp -a /usr/local/sbin/fix-serialization.php /tmp/$prod/
php /tmp/$prod/fix-serialization.php /tmp/$prod/$test.sql
# from https://github.com/Blogestudio/Fix-Serialization
echo "importeren"
mysql $prod < /tmp/$prod/$test.sql
echo "backuppen"
mv /home/$prod/www /tmp/$prod/backup
echo "kopieren en rechten zetten"
cp -a /home/$test/www /home/$prod/
cp /tmp/$prod/backup/wp-config.php /home/$prod/www/wp-config.php
chown -R $prod:$prod /home/$prod/www/*
chown -R $prod:$prod /home/$prod/www/.*
echo "overzetten en rechten zetten"
cp -a /home/$test/www /home/$prod/
cp /tmp/$prod/backup/wp-config.php /home/$prod/www/wp-config.php
chown -R $prod:$prod /home/$prod/www/*
chown -R $prod:$prod /home/$prod/www/.*
echo "zoeken en vervangen"
grep -Rl "/home/$test/www" /home/$prod/www | xargs sed -i
"s|/home/$test/www|/home/$prod/www|g"
grep -Rl "$zoek" /home/$prod/www | xargs sed -i "s|$zoek|$vervang|g"
echo "let op deze bestanden:"
echo "/home/$test/www/wp-config.php"
echo "/home/$prod/www/wp-config.php"
-----
Ik heb een scriptje geschreven om een Wordpress site van een testsite te
kopiëren naar een productie site, met wijziging van de URL.
Met sommige sites functioneert het goed, maar met eentje niet. Daar
missen b.v. delen van de voorpagina zoals menu's.
In de logs vind ik niet veel zinvols.
Volgens mij doe ik alles wat nodig is, zie script onder.
Enig idee wat er zou kunnen zijn als het mis gaat?
Misschien een theme met een soort kopieer beveiliging?
Groet,
Paul
------
#!/bin/bash
set -e # stop on error
read -p "Test site login (bijvoorbeeld test): " test
read -p "Productie site login: (bijvoorbeeld prod): " prod
read -p "Zoek op: (bijvoorbeeld test.site.nl): " zoek
read -p "Vervang door: (bijvoorbeeld www.site.nl): " vervang
if test -e /tmp/$prod; then
mv /tmp/$prod /tmp/$prod-weg # voor als hij bestaat
fi
mkdir /tmp/$prod/
echo "dumpen"
mysqldump -QR $prod > /tmp/$prod/$prod.sql
mysqldump -QR $test > /tmp/$prod/$test.sql
echo "database corrigeren"
sed -i -e "s/$zoek/$vervang/g" /tmp/$prod/$test.sql
cp -a /usr/local/sbin/fix-serialization.php /tmp/$prod/
php /tmp/$prod/fix-serialization.php /tmp/$prod/$test.sql
# from https://github.com/Blogestudio/Fix-Serialization
echo "importeren"
mysql $prod < /tmp/$prod/$test.sql
echo "backuppen"
mv /home/$prod/www /tmp/$prod/backup
echo "kopieren en rechten zetten"
cp -a /home/$test/www /home/$prod/
cp /tmp/$prod/backup/wp-config.php /home/$prod/www/wp-config.php
chown -R $prod:$prod /home/$prod/www/*
chown -R $prod:$prod /home/$prod/www/.*
echo "overzetten en rechten zetten"
cp -a /home/$test/www /home/$prod/
cp /tmp/$prod/backup/wp-config.php /home/$prod/www/wp-config.php
chown -R $prod:$prod /home/$prod/www/*
chown -R $prod:$prod /home/$prod/www/.*
echo "zoeken en vervangen"
grep -Rl "/home/$test/www" /home/$prod/www | xargs sed -i
"s|/home/$test/www|/home/$prod/www|g"
grep -Rl "$zoek" /home/$prod/www | xargs sed -i "s|$zoek|$vervang|g"
echo "let op deze bestanden:"
echo "/home/$test/www/wp-config.php"
echo "/home/$prod/www/wp-config.php"
-----
--
Paul van der Vlis Linux systeembeheer Groningen
https://vandervlis.nl
Paul van der Vlis Linux systeembeheer Groningen
https://vandervlis.nl