Apache Ofbiz – esperimenti

Introduzione

Apache Ofbiz e un strumento completo per la gestione del azienda ed in particolar modo sito e integrazione con vari marketplace come ebay, amazon, magento. Il progetto e stato svilupato da comunità Apache perciò garantisce ottima strutturazione del codice, modularità e manutenzione. Visto che mi occupo di sviluppo di software di integrazione, per me è stato un ottimo esempio di alcune soluzioni adottate. Il software e molto completo e abbstanza complesso, richiede un apprendimento tutto sommato impegnativo. Il software e svilupato complettamente in Java e usa web per tutti gli panelli. Fortunatamente include un webserver interno, perciò rimane complettamente autonomo e non richiede nessun altro software di supporto. Da notare anche che nei svariati moduli, include anche già maturo POS, cioè possibilità di integrazione con “vendita al banco” usando un hardware come le casse elettroniche. Apache non rimane indietro con i tempi, e panelli web sono complettamente “mobile friendly” e usano jquery e jquery mobile.

Installazione

Installazione è abbastanza facile e non richiede conoscenze di programmazione e può essere installato su qualsiasi desktop Windows o Mac. Una guida di installazione troviamo sul sito ufficiale: https://cwiki.apache.org/confluence/display/OFBIZ/Demo+and+Test+Setup+Guide
Personalmente ho optato per una installazione completa da ultimo sorgente tramite svn (richiede un software di subversion)

Clonaggio del repository (sorgenti) nella tua cartella chiamata “ofbiz”
$ svn co http://svn.apache.org/repos/asf/ofbiz/trunk ofbiz

Compilazione
$ cd ofbiz && ./ant

Installazione dei dati di esempio
$ ./ant load-demo

Lanciamo server (esegue un servizio locale che fornisce interfacce web)
$ ./ant start

… cosi abbiamo accesso al nostro server locale con seguenti url:
http://127.0.0.1:8080/ecommerce/control/main : applicazione e-commerce
https://127.0.0.1:8443/webtools/control/main : utilità web
https://127.0.0.1:8443/catalog/control/main : gestione catalogo
Per autenticazione usiamo parametri: user: “admin“, password: “ofbiz
NB: se nostro firewall permette possiamo ovviamente accedere da altri pc nella stessa rete.

Ecco qualche schermata …

Schermata 2016-04-24 alle 22.25.07

Schermata 2016-04-24 alle 22.26.00

Schermata 2016-04-24 alle 22.26.24

 

 

Magento 2 – Installazione

Commandi e spiegazione di installazione Magento 2 (prontuario)

Premessa:
Installazione Magento 2 in questo esempio è stata fatta sul server proprietario (accesso ssh) Ubuntu complettamente da riga di commando
Le configurazioni di esempio sono:
– percorso del sito (home): /srv/albertix.com/shop.albertix.com/htdocs
– utente: demo
– gruppo di apache (gruppo proprietario webserver): www-data

NB: per proccedere si deve registrare sul sito magentocommerce.com per ottenere le chiavi di autenticazione.
1. Utente
$ adduser --home /srv/albertix.com/shop.albertix.com demo
$ usermod -g www-data demo
$ su demo
(da ora, resto dei commandi esegue utente appena creato)

2. Installazione base
$demo> composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition /srv/albertix.com/shop.albertix.com/htdocs

3. Permessi
$demo> cd /srv/albertix.com/shop.albertix.com/htdocs
$demo> chown -R :www-data .
$demo> find . -type d -exec chmod 770 {} \; && find . -type f -exec chmod 660 {} \; && chmod u+x bin/magento

NB: si consiglia di aggiungere seguente riga nel proprio profilo (cioe “.bashrc”):

export PATH=$PATH:/srv/albertix.com/shop.albertix.com/htdocs/bin

.. e caricare: source .bashrc

4. Database (esempio per script shell)
NB: variabili (che iniziano con “$” si devono sostituire con propri valori)
$demo> mysql -u$DB_SUPERUSER -p$DB_SUPERPASS -h$DB_HOST -e "CREATE USER '$DB_USER'@'$DB_HOST' IDENTIFIED BY '$DB_PASS';"
$demo> mysqladmin -u$DB_SUPERUSER -p$DB_SUPERPASS -h$DB_HOST create $DB_NAME
$demo> mysql -u$DB_SUPERUSER -p$DB_SUPERPASS -h$DB_HOST -e "GRANT ALL ON $DB_NAME.* TO '$DB_USER'@'$DB_HOST';"

5. Installazione magento 2
Questa fase e più importante.
Nb:  $ADMIN_URL : nome del percorso admin (es: adminshop)
$demo> cd /storage/www/albertix.com/shop.albertix.com/htdocs/bin
$demo> magento setup:install \
--base-url=/srv/albertix.com/shop.albertix.com/ \
--db-host=$DB_HOST \
--db-name=$DB_NAME \
--db-user=$DB_USER \
--db-password=$DB_PASS \
--admin-firstname=$ADMIN_FIRSTNAME \
--admin-lastname=$ADMIN_LASTNAME \
--admin-email=$ADMIN_EMAIL \
--admin-user=$ADMIN_USER \
--admin-password=$ADMIN_PASS \
--language=it_IT \
--currency=EUR \
--timezone=Europe/Rome \
--use-rewrites=1 \
--backend-frontname=$ADMIN_URL

6. Dati di esempio (facoltativo)
$demo> cd /storage/www/albertix.com/shop.albertix.com/htdocs/bin
$demo> magento sampledata:deploy
$demo> magento setup:upgrade

Note finali.
Attivare utente ftp per upload files.
Magento 2 non contiene files in italiano perciò si consiglia di leggere articolo sulle traduzioni