Lorenzo Milesi
10 years ago
1 changed files with 210 additions and 0 deletions
@ -0,0 +1,210 @@
|
||||
Installare Yii |
||||
============== |
||||
|
||||
Puoi installare Yii in due modi, usando [Composer](http://getcomposer.org/) o scaricando un archivio. |
||||
Il metodo preferito è il primo, perché ti consente di installare [estensioni](structure-extensions.md) o aggiornare il core di Yii |
||||
semplicemente eseguendo un comando. |
||||
|
||||
> Nota: diversamente da Yii 1, le installazioni standard di Yii 2 comportano il download e l'installazione sia del framework che dello scheletro dell'applicazione |
||||
|
||||
|
||||
Installazione via Composer <a name="installing-via-composer"></a> |
||||
-------------------------- |
||||
|
||||
Se non hai già installato Composer puoi farlo seguendo le istruzioni al sito |
||||
[getcomposer.org](https://getcomposer.org/download/). Su Linux e Mac OS X puoi installare Composer con questo comando: |
||||
|
||||
curl -s http://getcomposer.org/installer | php |
||||
mv composer.phar /usr/local/bin/composer |
||||
|
||||
Su Windows devi scaricare ed eseguire [Composer-Setup.exe](https://getcomposer.org/Composer-Setup.exe). |
||||
|
||||
Fai riferimento alla [documentazione di Composer](https://getcomposer.org/doc/) in casodi errori o se vuoi apprendere maggiori |
||||
informazioni sull'uso di Composer. |
||||
|
||||
Se hai già Composer installato assicurati di avere una versione aggiornata. Puoi aggiornare Composer con il comando |
||||
`composer self-update`. |
||||
|
||||
Una volta installato Composer, puoi installare Yii eseguendo questo comando in una directory accessbile via web: |
||||
|
||||
composer global require "fxp/composer-asset-plugin:1.0.0-beta2" |
||||
composer create-project --prefer-dist yiisoft/yii2-app-basic basic |
||||
|
||||
Il primo comando installa il [plugin composer asset](https://github.com/francoispluchino/composer-asset-plugin/) |
||||
che consente di gestire le dipendenze di bower e npm tramite Composer. Devi eseguire questo comando solo una volta. Il secondo |
||||
installa Yii in una directory di nome `basic`. Puoi scegliere un nome diverso, se preferisci. |
||||
|
||||
> Nota: durante l'installazione potrebbe essere che Composer ti chieda le credenziali di Github, per superato limite di utilizzo |
||||
> delle API di Github. Questa situazione è normale perché Composer deve scaricare molte informazioni per tutti i pacchetti da Github. |
||||
> Accedendo a Github aumenterà il limite di utilizzo delle API, consentendo a Composer di completare il suo lavoro. Per maggiori |
||||
> dettagli fai riferimento alla |
||||
> [documentazione di Composer](https://getcomposer.org/doc/articles/troubleshooting.md#api-rate-limit-and-oauth-tokens). |
||||
|
||||
> Suggerimento: se vuoi installare l'ultima versione di sviluppo di Yii, puoi usare questo comando che aggiunge una |
||||
> [opzione di stabilità](https://getcomposer.org/doc/04-schema.md#minimum-stability): |
||||
> |
||||
> composer create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic basic |
||||
> |
||||
> Considera che la versione di sviluppo di Yii non dovrebbe essere utilizzata per siti di produzione perché potrebbe rendere instabile |
||||
> il tuo codice. |
||||
|
||||
|
||||
Installazione da un archivio <a name="installing-from-archive-file"></a> |
||||
---------------------------- |
||||
|
||||
L'installazione da un archivio compresso comporta tre passaggi: |
||||
|
||||
1. Scaricare l'archivio da [yiiframework.com](http://www.yiiframework.com/download/). |
||||
2. Scompattare l'archivio in una directory accessible via web. |
||||
3. Modificare il file `config/web.php` inserendo una chiave segreta per il parametro di configurazione `cookieValidationKey` |
||||
(questa operazione viene fatta automaticamente se installi tramite Composer): |
||||
|
||||
```php |
||||
// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation |
||||
'cookieValidationKey' => 'enter your secret key here', |
||||
``` |
||||
|
||||
|
||||
Altre modalità di installazione <a name="other-installation-options"></a> |
||||
------------------------------- |
||||
|
||||
Le istruzioni sopra elencate mostrano come installare Yii, e creano inoltre un'applicazione web base funzionante. |
||||
Questo approccio è un ottimo punto di partenza per progetti minori, o se stai imparando Yii. |
||||
|
||||
Ma ci sono altre opzioni disponibili per l'installazione: |
||||
|
||||
* se vuoi installare solo il core e costruire l'applocazione da zero puoi seguire le istruzioni della sezione |
||||
[costruire un'applicazione da zero](tutorial-start-from-scratch.md). |
||||
* se vuoi avviare un'applicazione più sofisticata, che meglio si sposa per uno sviluppo di gruppo, puoi considerare l'insallazione del |
||||
[template di applicazione avanzata](tutorial-advanced-app.md). |
||||
|
||||
|
||||
Verifica dell'installazione <a name="verifying-installation"></a> |
||||
--------------------------- |
||||
|
||||
Dopo l'installazione puoi usare il tuo browser per accedere all'applicazione Yii installata con l'URL seguente: |
||||
|
||||
``` |
||||
http://localhost/basic/web/index.php |
||||
``` |
||||
|
||||
Questo indirizzo assume che hai installato Yii in una directory di nome `basic`, direttamente nella *root* del tuo webserver, |
||||
e che il webserver è in esecuzione sulla tua macchina locale (`localhost`). Potresti doverlo modificare a seconda del tuo ambiente |
||||
di installazione. |
||||
|
||||
![Installazione di Yii completata con successo](images/start-app-installed.png) |
||||
|
||||
Dovresti vedere la pagina sopra di congratulazioni. In caso contrario verifica se la tua installazione di PHP soddisfa i requisiti minimi |
||||
di Yii. Puoi verificare le richieste in due modi: |
||||
|
||||
* accedere all'indirizzo `http://localhost/basic/requirements.php` tramite browser; |
||||
* lanciando questi comandi: |
||||
|
||||
``` |
||||
cd basic |
||||
php requirements.php |
||||
``` |
||||
|
||||
Devi configurare la tua installazione di PHP in modo che soddisfi le richieste minime di Yii. E' molto importante che tu stia usando |
||||
PHP 5.4 o successivo. Devi inoltre installare le [estensioni PDO di PHP](http://www.php.net/manual/en/pdo.installation.php) e un driver |
||||
di database di PDO (come ad esempio `pdo_mysql` per i database MySQL), se la tua applicazione richiede un database. |
||||
|
||||
|
||||
Configurazione del webserver <a name="configuring-web-servers"></a> |
||||
---------------------------- |
||||
|
||||
> Informazione: puoi saltare questa parte per ora se stai solo provando Yii e non hai intenzione di installarlo su un server di produzione. |
||||
|
||||
L'applicazione installata secondo le istruzioni sopra dovrebbe funzionare senza problemi su un server |
||||
[Apache](http://httpd.apache.org/) o [Nginx](http://nginx.org/), su Windows, Mac OS X, or Linux equipaggiati con PHP 5.4 o successivo. |
||||
Yii 2.0 è anche compatibile con le librerie [HHVM](http://hhvm.com/) di Facebook, tuttavia ci sono alcuni casi limite dove HHVM si |
||||
comporta diversamente dal PHP nativo, quindi devi avere maggiore cura se intendi usare HHVM. |
||||
|
||||
Su un server di produzione vorrai probabilmente che la tua applicazione sia accessibile tramite l'url |
||||
`http://www.example.com/index.php` invece di `http://www.example.com/basic/web/index.php`. Questo risultato richiede che punti la |
||||
*document root* del tuo webserver nella directory `basic/web`. Vorrai magari anche nascondere `index.php` dall'URL, come descritto |
||||
nella sezione [analizzare e generare URL](runtime-url-handling.md). |
||||
In questa parte vedrai configurare il tuo server Apache o Nginx per ottenere questo risultato. |
||||
|
||||
> Informazione: impostando `basic/web` come *document root* impedisci agli utenti finali di accedere al codice e a file/informazioni |
||||
riservate memorizzate nelle directory superiori a `basic/web`. Negare l'accesso a queste altre cartelle è sicuramente un vantaggio |
||||
per la sicurezza. |
||||
|
||||
> Informazione: se la tua applicazione andrà installata su un servizio di hosting condiviso non avrai il permesso di modificare la |
||||
configurazione del webserver, ma dovrai comunque correggere la struttura della tua applicazione per migliorare la sicurezza. Fai |
||||
riferimento alla sezione [ambienti di hosting condiviso](tutorial-shared-hosting.md) per maggiori dettagli. |
||||
|
||||
|
||||
### Configurazione consigliata di Apache <a name="recommended-apache-configuration"></a> |
||||
|
||||
Usa questa configurazione nel file `httpd.conf` di Apache o nella definizione del tuo *VirtualHost*. Tieni presente che dovrai |
||||
modificare `path/to/basic/web` con il percorso reale della tua `basic/web`. |
||||
|
||||
``` |
||||
# Imposta *DocumentRoot* per essere "basic/web" |
||||
DocumentRoot "path/to/basic/web" |
||||
|
||||
<Directory "path/to/basic/web"> |
||||
# usa mod_rewrite per gli url SEF |
||||
RewriteEngine on |
||||
# If a directory or a file exists, use the request directly |
||||
RewriteCond %{REQUEST_FILENAME} !-f |
||||
RewriteCond %{REQUEST_FILENAME} !-d |
||||
# Otherwise forward the request to index.php |
||||
RewriteRule . index.php |
||||
|
||||
# ...altre impostazioni... |
||||
</Directory> |
||||
``` |
||||
|
||||
|
||||
### Configurazione consigliata di Nginx <a name="recommended-nginx-configuration"></a> |
||||
|
||||
Devi aver installato PHP con il demone [FPM](http://php.net/install.fpm) per usare [Nginx](http://wiki.nginx.org/). |
||||
Usa questa configurazione per Nginx, sostituendo `path/to/basic/web` con il percorso reale di `basic/web` e `mysite.local` con |
||||
il nome reale del server web. |
||||
|
||||
``` |
||||
server { |
||||
charset utf-8; |
||||
client_max_body_size 128M; |
||||
|
||||
listen 80; ## listen for ipv4 |
||||
#listen [::]:80 default_server ipv6only=on; ## listen for ipv6 |
||||
|
||||
server_name mysite.local; |
||||
root /path/to/basic/web; |
||||
index index.php; |
||||
|
||||
access_log /path/to/basic/log/access.log main; |
||||
error_log /path/to/basic/log/error.log; |
||||
|
||||
location / { |
||||
# Redirect everything that isn't a real file to index.php |
||||
try_files $uri $uri/ /index.php?$args; |
||||
} |
||||
|
||||
# uncomment to avoid processing of calls to non-existing static files by Yii |
||||
#location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { |
||||
# try_files $uri =404; |
||||
#} |
||||
#error_page 404 /404.html; |
||||
|
||||
location ~ \.php$ { |
||||
include fastcgi.conf; |
||||
fastcgi_pass 127.0.0.1:9000; |
||||
#fastcgi_pass unix:/var/run/php5-fpm.sock; |
||||
try_files $uri =404; |
||||
} |
||||
|
||||
location ~ /\.(ht|svn|git) { |
||||
deny all; |
||||
} |
||||
} |
||||
``` |
||||
|
||||
Usando questa configurazione dovresti anche impostare `cgi.fix_pathinfo=0` in `php.ini` per evitare molte chiamate di sistema `stat()` |
||||
inutili. |
||||
|
||||
Inoltre considera che nel caso di server HTTPS dovrai aggiungere `fastcgi_param HTTPS on;` così che Yii possa correttamente rilevare |
||||
se la connessione è sicura. |
Loading…
Reference in new issue