Diferență între revizuiri ale paginii „Instrucțiuni de instalare”

De la dexonline wiki
Sari la navigare Sari la căutare
(Nu s-au afișat 16 versiuni intermediare efectuate de alți 2 utilizatori)
Linia 9: Linia 9:
* Rulați Arch Linux + MariaDB + Apache.
* Rulați Arch Linux + MariaDB + Apache.
* Codul-sursă va fi instalat în '''/srv/http/dexonline'''.
* Codul-sursă va fi instalat în '''/srv/http/dexonline'''.
* Codul-sursă va fi accesat la http://localhost/dexonline/www/.
* MariaDB folosește utilizator=root, parolă=<vidă>, host=localhost, database=dexonline.
* MariaDB folosește utilizator=root, parolă=<vidă>, host=localhost, database=dexonline.


Linia 16: Linia 17:


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
sudo pacman -S apache mariadb php php-apache git
sudo pacman -S apache mariadb php php-apache git gettext
</syntaxhighlight>
 
=== Pachete opționale ===
 
Anumite scripturi (neesențiale pentru funcționarea clonei) folosesc funcții din pachete suplimentare:
<syntaxhighlight lang="bash">
sudo pacman -S php-curl php-xml
</syntaxhighlight>
</syntaxhighlight>


Linia 29: Linia 37:
</syntaxhighlight>
</syntaxhighlight>


=== Editați dex.conf ===
=== Editați Config.php ===


Probabil va trebui să modificați doar valoarea pentru '''database''' și doar dacă folosiți alte valori pentru conexiune.
Probabil va trebui să modificați doar valorile pentru
 
* '''URL_HOST''' și '''URL_PREFIX''' dacă accesați instalarea la altă adresă;
* '''DATABASE''' dacă folosiți alte valori pentru conexiune.
 
Creați fișierul descris în '''LOG_FILE''' și dați-i drept de scriere universal:
 
<syntaxhighlight lang="bash">
sudo touch /var/log/dexonline.log
sudo chmod 666 /var/log/dexonline.log
</syntaxhighlight>


=== Descărcați baza de date ===
=== Descărcați baza de date ===


Importarea poate dura 5-10 minute. Nu avem o bază de date minimală, o folosim pe cea publică.
Importarea poate dura 5-10 minute. Nu avem o bază de date minimală, o folosim pe cea publică. Puteți citi [https://github.com/dexonline/dexonline/wiki/Database-Schema documentația schemei] bazei de date.


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
mysql -u root -e "create database dexonline charset utf8"
mysql -u root -e "create database dexonline charset utf8mb4"
wget -O /tmp/dex-database.sql.gz https://dexonline.ro/static/download/dex-database.sql.gz
wget -O /tmp/dex-database.sql.gz https://dexonline.ro/static/download/dex-database.sql.gz
zcat /tmp/dex-database.sql.gz | mysql -u root dexonline
zcat /tmp/dex-database.sql.gz | mysql -u root dexonline
php tools/migration.php
php tools/migration.php
</syntaxhighlight>
</syntaxhighlight>
Dacă spațiul pe disc este o problemă, puteți economisi circa 1,7 GB prin [[Minimizarea bazei de date]].


=== Modificați /etc/httpd/conf/httpd.conf (ca root) ===
=== Modificați /etc/httpd/conf/httpd.conf (ca root) ===


Activați modulul rewrite: decomentați linia
Activați modulul rewrite: asigurați-vă că următoarea linie nu este comentată:


<syntaxhighlight lang="apache">
<syntaxhighlight lang="apache">
Linia 73: Linia 93:
=== Testați ===
=== Testați ===


Acum http://localhost/dexonline/wwwbase/ ar trebui să meargă.
Acum http://localhost/dexonline/www/ ar trebui să meargă.


== OS X ==
== OS X ==
Linia 90: Linia 110:


* în baza de date: rulați '''php tools/migration.php''';
* în baza de date: rulați '''php tools/migration.php''';
* în fișierul de configurare: preluați noutățile din '''dex.conf.sample''' în '''dex.conf''';
* în fișierul de configurare: preluați noutățile din '''Config.php.sample''' în '''Config.php''';
* în fișierul de configurare Apache: preluați noutățile din '''wwwbase/.htaccess.sample''' în '''wwwbase/.htaccess'''.
* în fișierul de configurare Apache: preluați noutățile din '''www/.htaccess.sample''' în '''www/.htaccess'''.


== Convenții de codare ==
== Convenții de codare ==
Linia 101: Linia 121:
* vedeți corect diacriticele ĂÂÎȘȚ și alte câteva simboluri Unicode;
* vedeți corect diacriticele ĂÂÎȘȚ și alte câteva simboluri Unicode;
* tastați corect diacriticele românești; în particular, Ș și Ț cu virgulă, nu Ş și Ţ cu sedilă;
* tastați corect diacriticele românești; în particular, Ș și Ț cu virgulă, nu Ş și Ţ cu sedilă;
* folosiți diacritice în orice mesaje către utilizator.
* folosiți diacritice în orice mesaje afișate către utilizator.
 
== Configurări opționale ==
 
Aceste configurări sunt necesare doar dacă lucrați în mod explicit la componentele respective.
 
=== OpenID Connect ===


Pe 20 aprilie 2015, [https://developers.google.com/identity/protocols/OpenID2Migration Google a întrerupt suportul pentru OpenID 2.0] și recomandă migrarea la OpenID Connect (sau la alte sisteme, dar noi am ales OpenID Connect). Pentru a vă putea conecta cu contul Google pe instalarea dumneavoastră locală, trebuie să urmați o procedură care nu este grea, dar este migăloasă. Urmați acești pași:
== Localizare ==


# Creați un proiect în [https://console.developers.google.com/ Google Developers Console]
Vedeți [https://github.com/dexonline/dexonline/wiki/Localization Localization].
# Pentru acest proiect, creați un ID de client și un secret conform [https://developers.google.com/identity/protocols/OpenID2Migration#openid-connect instrucțiunilor] (pașii a-f)
# În fereastra „redirect URIs”, introduceți URL-ul la care utilizatorul revine după autentificare. Acesta depinde de calea unde ați făcut instalarea locală, de exemplu:
#* <tt><nowiki>http://localhost/DEX/wwwbase/auth/revenireOpenidConnect.php</nowiki></tt>
#* <tt><nowiki>http://localhost/~username/DEX/wwwbase/auth/revenireOpenidConnect.php</nowiki></tt>
# În fișierul de configurare <tt>dex.conf</tt>, în secțiunea <tt>[openid]</tt>, adăugați o linie cu ID-ul de client și secretul, în formatul
#* <tt>credentials[accounts.google.com] = "ID_client|secret"</tt> (înlocuiți valorile <tt>ID_client</tt> și <tt>secret</tt> cu valorile din Google Developers Console)

Versiunea de la data 27 ianuarie 2020 11:07

Docker

Urmați aceste instrucțiuni pentru instalarea cu Docker.

Linux

Presupuneri

  • Rulați Arch Linux + MariaDB + Apache.
  • Codul-sursă va fi instalat în /srv/http/dexonline.
  • Codul-sursă va fi accesat la http://localhost/dexonline/www/.
  • MariaDB folosește utilizator=root, parolă=<vidă>, host=localhost, database=dexonline.

Pentru orice deviere de la aceste presupuneri, va trebui să adaptați instrucțiunile de mai jos.

Instalați pachetele necesare

sudo pacman -S apache mariadb php php-apache git gettext

Pachete opționale

Anumite scripturi (neesențiale pentru funcționarea clonei) folosesc funcții din pachete suplimentare:

sudo pacman -S php-curl php-xml

Clonați și inițializați repo-ul dexonline

cd /srv/http/
sudo git clone https://github.com/dexonline/dexonline
sudo chown -R utilizator.utilizator dexonline
cd dexonline
tools/setup.sh

Editați Config.php

Probabil va trebui să modificați doar valorile pentru

  • URL_HOST și URL_PREFIX dacă accesați instalarea la altă adresă;
  • DATABASE dacă folosiți alte valori pentru conexiune.

Creați fișierul descris în LOG_FILE și dați-i drept de scriere universal:

sudo touch /var/log/dexonline.log
sudo chmod 666 /var/log/dexonline.log

Descărcați baza de date

Importarea poate dura 5-10 minute. Nu avem o bază de date minimală, o folosim pe cea publică. Puteți citi documentația schemei bazei de date.

mysql -u root -e "create database dexonline charset utf8mb4"
wget -O /tmp/dex-database.sql.gz https://dexonline.ro/static/download/dex-database.sql.gz
zcat /tmp/dex-database.sql.gz | mysql -u root dexonline
php tools/migration.php

Dacă spațiul pe disc este o problemă, puteți economisi circa 1,7 GB prin Minimizarea bazei de date.

Modificați /etc/httpd/conf/httpd.conf (ca root)

Activați modulul rewrite: asigurați-vă că următoarea linie nu este comentată:

LoadModule rewrite_module modules/mod_rewrite.so

Configurați php-apache conform instrucțiunilor (secțiunea Using libphp).

Permiteți fișiere .htaccess:

<Directory "/srv/http">
    ...
    AllowOverride All
    ....
</Directory>

(Re)porniți serviciile

sudo systemctl restart mariadb
sudo apachectl restart

Testați

Acum http://localhost/dexonline/www/ ar trebui să meargă.

OS X

Urmați aceste instrucțiuni de instalare pentru OS X cu MAMP

Ținerea la zi

Actualizați codul:

git pull

Git vă va anunța dacă au apărut modificări:

  • în baza de date: rulați php tools/migration.php;
  • în fișierul de configurare: preluați noutățile din Config.php.sample în Config.php;
  • în fișierul de configurare Apache: preluați noutățile din www/.htaccess.sample în www/.htaccess.

Convenții de codare

Folosim stilul Google pentru Java. În principiu, dacă urmați stilul existent în cod, va fi cum trebuie.

În plus, referitor la limba română, veți avea nevoie să:

  • vedeți corect diacriticele ĂÂÎȘȚ și alte câteva simboluri Unicode;
  • tastați corect diacriticele românești; în particular, Ș și Ț cu virgulă, nu Ş și Ţ cu sedilă;
  • folosiți diacritice în orice mesaje afișate către utilizator.

Localizare

Vedeți Localization.