PHP.EE FOORUM   
Nimi:   Pass:   Mäleta mind! 
   Teemad | php.ee esilehele | registreeri | Märgi kõik teemad loetuks | #php.ee Skype vestlus | RSS
UUS TEEMA  OTSI  Lehekülgi: 1
Vajan abi Preshtashopi poe söödavaks tegemisel googlele
Postitaja: kirjatuvi 2017-10-18 09:54:28
Tere! Mingi aeg leht töötas korralikult. Siis tuli teade mingi mooduli sobimatusest ja pärast Google lehte enam ei leia.
Abi vajan analüüsil ja parendusel. Musta tööga saan ise hakkama.

e-mail ser.ver@mail.ee

Tänud
RE: Vajan abi Preshtashopi poe söödavaks tegemisel googlele
Postitaja: ITont 2017-10-19 03:14:04

Väga lihtne. Võtke varukoopiatest mooduliinstallimis-eelne versioon ja toimibki.

Koodihoidlad (git, CVS, SVN, bzr, jne.) omavadki täpselt selliseks puhuks
versioonihaldust. Kui midagi tuksi läheb, siis saab võtta vana versiooni
uuesti ette. Kodulehtede korral tuleb Teil kogu veebi-ruut koodihoidlasse
panna ja lisada koodihidlasse ka veebiruudust välja poole jääv kataloog,
kuhu panete automaatselt ülekirjutatavad andmebaasi-jäljendi-failid,
mis MySQL ning PostgreSQL'i korral on juhtumisi tavalist SQL-koodi
sisaldavad tekstifailid.

See, kui MySQL'i andmebaasijäljendi suurus on mitu GiB, pole üldiselt
probleemiks, sest koodihoidlasüsteemid, näiteks git, salvestavad
iga versiooniga vaid delta. Näiteks, et kui 2GiB suurusest
tekstifailist on muutunud vaid mõned tähemärgid, siis uus versioon
salvestatakse git'i poolt jutuga:
"uus versioon on eelmine versioon muudetult viisil blabla"
Mis aega võtab, on esimese sissekande tegemine, sest siis tuleb
tõesti kõik täiel määral koodihoidlasse ümber kopeerida.

Mõned Bash'i read mis on õeldud asuma
eraldi tekstifailis, mida käivitatakse reaga:

bash minu_bashiskript.txt

<pre>
#!/usr/bin/env bash # See peab olema skriptifaili k8ige 1. rida ja #! ei tohi omada mittetyhjast stringist prefkiksit.
mkdir ./koodihoidla_mis_asub_publitseerimisserveris # ja v2ljaspool veebi juurkataloogi
cd ./koodihoidla_mis_asub_publitseerimisserveris
git init # loob kataloogi ./.git , mis on m8eldud koodihoidla sisu ja versiooniinfo panipaigaks.
mkdir ./privaatfailid
cd ./privaatfailid
mkdir ./andmebaasij2ljendid
cd ./andmebaasij2ljendid
mkdir ./MySQL_andmebaaside_j2ljendid
cd ./MySQL_andmebaaside_j2ljendid
S_KASUTAJANIMI="siia kirjutate oma andmebaasi kasutajanime"
S_PAROOL="siia kirjutate MySQL andmebaasi kasutaja parooli"
S_ANDMEBAASI_NIMI="siia kirjutate vastava MySQL andmebaasi nime "
nice -n5 mysqldump -u $S_KASUTAJANIMI -p$S_PAROOL $S_ANDMEBAASI_NIMI > ./minu_MySQL_andmebaasi_sisu_j2ljend_SQL_koodina.txt
# J2ljendi varukoopiast laadimine Linuxis, Bash'i konsoolil:
# mysql -u $S_KASUTAJANIMI -p$S_PAROOL $S_ANDMEBAASI_NIMI < ./minu_MySQL_andmebaasi_sisu_j2ljend_SQL_koodina.txt
cd .. # cd ./MySQL_andmebaaside_j2ljendid
mkdir ./PostgreSQL_andmebaaside_j2ljendid
cd ./PostgreSQL_andmebaaside_j2ljendid
S_KASUTAJANIMI="siia kirjutate oma andmebaasi kasutajanime"
S_ANDMEBAASI_NIMI="siia kirjutate vastava PostgreSQL andmebaasi nime "
S_ANDMEBAASI_SKEEMI_NIMI="minu toreda andmebaasiskeemi nimi" // "schema"

# Antud rida kysib interaktiivselt andmebaasi kasutaja parooli.
# PosrtgreSQL korral k2ib parooli automaatselt ette andmine keerulisemalt.
# https://stackoverflow.com/questions/2893954/how-to-pass-in-password-to-pg-dump
pg_dump --schema=$S_ANDMEBAASI_SKEEMI_NIMI --host=ipaadress --port=5432 --username=$S_KASUTAJANIMI --password --verbose $S_ANDMEBAASI_NIMI > minu_PosrgreSQL_andmebaasi_sisu_j2ljend.midagi
# J2ljendi varukoopiast laadimine Linuxis, Bash'i konsoolil:
# psql -U $S_KASUTAJANIMI --port=5432 $S_ANDMEBAASI_NIMI < minu_PosrgreSQL_andmebaasi_sisu_j2ljend.midagi
cd .. # cd ./PostgreSQL_andmebaaside_j2ljendid
cd .. # cd ./andmebaasij2ljendid
cd .. # cd ./privaatfailid
mkdir ./veebi_juur_ehk_veebist_avalikult_k2ttesaadavad_failid
cd ./veebi_juur_ehk_veebist_avalikult_k2ttesaadavad_failid
if [ -e ./minulogo.ico ]; then # Bash'is on oluline, et if-lausetes nurksulule "]" eelneks alati v2hemalt yks tyhik.
# Bash on ekstra lollilt arhailine programmeerimiskeel, millele t2nap2eva
# m8istuslikkuse reeglid ei kehti. Bash'i peamine eelis on see, et
# seoses tema yyratult suure vanusega on ta lollikindlalt yhesugune
# k8igil UNIX'ilaadsetel operatsioonisysteemidel: BSD, Linux, GNU Hurd.
# Tuleb v2lja, et uusimate Windows 10 versioonidel jookseb
# Ubuntu Linux'i Bash-konsool, AMETLIKULT KOOST66S UBUNTUGA, ja
# ilma CygWin'ita ja ilma virtuaalmasinata:
#
# sissejuhatus:
# https://www.youtube.com/watch?v=PP_T_m0UV9E
#
# ametlik dokumentatsioon:
# https://msdn.microsoft.com/en-us/commandline/wsl/about
#
# Seega, kui kirjutate Bash'skripti, siis saate olla kindel, et
# see toimib, s8ltumata sellest, et Bash on üks igivana jama.
# Kui Teil midagi mahukamat teha on tarvis, siis 2rge palun
# Bash'i kasutage. Bash k8lbab vaid h2sti portatiivsete ja
# tekstioperatsioone mitte-sisaldavate asjade jaoks. N2iteks,
# Bash'iga saate oma programmi t66le t8mmata viisil, et
# seate enne programmi k2ivitumist keskkonnamuutujad sobivaks.
# Tekstioperatsioonideks, radade uurimiseks, on tark Bash'ist
# t66le t8mmata kas Ruby v8i Perl või Python või midagi muud,
# kuid neid k2ivitusi ei tohi olla palju, sest Pythoni
# ja Java interpretaatorite k2ivitamine on meeletult t66mahukas, aega n8udev.
if [ `pwd | grep koodihoidla` == "" ]; then
echo "Veaolukord. Lisainfoks otsida varukoopia loomise skriptist yles GUID"
echo "5a63d64f-591e-447c-b5ae-4b2488f19c68"
exit 42 # veakood on 42. Ilma veata v2ljudes on veakood alati 0.
# Bash'i k2sureal saab vaadata
# t66 l8petanud programmide veakoode $? abil, n2iteks
# echo "Veakood on: $?"
# Testimiskood proovimiseks:
# whoami ; echo "Veakood on: $?"; whoami fool; echo "Veakood on seekord: $?"
fi
#---------------------
rm -fr ./* # Ettevaatus-abin8una tuleb failide rekursiivse
# kustutamise koodiread kõigis programmeerimiskeeltes
# alati ümbritseda lisa-testidega, veendumaks, et
# rekursiivse kustutamise operatsiooni
# sooritatakse 8ige kataloogi sisemuses.
#
# V2ltimaks yyratut sulgude yksteise sisse sattumist,
# mis mitte Bash'is, aga "pseudokoodis" n2eb v2lja selline:
#
# if test_1_l2bitud() {
# if test_2_l2bitud() {
# if test_3_l2bitud() {
# if test_4_l2bitud() {
# sooritame_ohtliku_operatsiooni()
# } else { // test 4 p8rus
# veaolukorraga_tegelemine()
# }
# } else { // test 3 p8rus
# veaolukorraga_tegelemine()
# }
# } else { // test 2 p8rus
# veaolukorraga_tegelemine()
# }
# } else { // test 1 p8rus
# veaolukorraga_tegelemine()
# }
#
# tasub test_X_l2bitud() funktsiooni asemel kasutada
# test_X_p8rutud() funktsiooni. Sellisel juhul
# on kood palju kompaktsem, omades kuju:
#
# boolean b_p8rusime=false
#
# if b_p8rusime==false {
# if test_1_p8rutud() { b_p8rusime=true;}
# }
# if b_p8rusime==false {
# if test_2_p8rutud() { b_p8rusime=true;}
# }
# if b_p8rusime==false {
# if test_3_p8rutud() { b_p8rusime=true;}
# }
# if b_p8rusime==false {
# if test_4_p8rutud() { b_p8rusime=true;}
# }
# if b_p8rusime==true{
# veaolukorraga_tegelemine()
# } # else {
# sooritame_ohtliku_operatsiooni()
# # }
#
# Funktsiooni test_X_p8rutud() asemel v8ib kasutada ka eitust:
# NOT(test_X_l2bitud())
# !test_X_l2bitud()
#
#---------------------
if [ "$?" != "0" ]; then
echo "Veaolukord. Lisainfoks otsida varukoopia loomise skriptist yles GUID"
echo "7b63d64f-591e-447c-b5ae-4b2488f19c68"
exit 43 # veakood on 43. Ilma veata v2ljudes on veakood alati 0.
fi
S_VEEBI_JUURKATALOOG_PUBLITSEERIMISSERVERIS="siia tuleb kataloogi failirada"
# cp -f -R $S_VEEBI_JUURKATALOOG_PUBLITSEERIMISSERVERIS ./
else
echo "Veaolukord. Lisainfoks otsida varukoopia loomise skriptist yles GUID"
echo "6a63d6af-591e-447c-b5ae-4b2488f19c68"
exit 44 # veakood on 44
fi
cd .. # cd ./veebi_juur_ehk_veebist_avalikult_k2ttesaadavad_failid
cd .. # cd ./koodihoidla_mis_asub_publitseerimisserveris
exit 0 # K8ik (loodetavasti) 8nnestus. Kui seda rida siin poleks, v2ljutaks vaikimisi veakoodiga 1, mis indikeerib n2ssu minekut.
</pre>

Põhjus, miks neid mitmeid GiB suurusi andmebaasijälendeid
enne koodihoidlasse lisamist mõne pakkimisprogrammiga kokku pakkida ei tohi,
seisneb selles, et kokkupakkimise korral ei saa koodihoidlasüsteem
eri versioonide korral selle faili võimalikult väikesi muutusi leida
ja peab tolle mitme GiB suuruse faili pea-aegu iga kord täiel määral oma
panipaika kopeerima, selle asemel, et vaid väike muudatus salvestada.


Loodetavasti oli abiks :-)
RE: Vajan abi Preshtashopi poe söödavaks tegemisel googlele
Postitaja: ITont 2017-10-19 03:17:09

Minu siinne kiri korrektsemalt formaaditult:

https://pastebin.com/MB83U1dk

RE: Vajan abi Preshtashopi poe söödavaks tegemisel googlele
Postitaja: kirjatuvi 2017-10-23 20:49:32
Tänud väga põhjaliku selgituse eest, aga hetkel tundub, et googlele ei meeldi kujundustemplate või midagi sellega seoses. Võib-olla tulekski versiooniuuendus teha ja vajalik data sinna sisse copyda.
RE: Vajan abi Preshtashopi poe söödavaks tegemisel googlele
Postitaja: blaa 2017-10-24 16:57:43
google webmaster tools peaks väga täpselt ütlema, milles probleem.

Leheküljed: 1

©2002-2013 Martin Rebane & PHP.ee kaasautorid
  0.518177032471