Nginx è un server HTTP gratuito, open source e ad alte prestazioni. Nginx è noto per la sua stabilità, il ricco set di funzionalità, la configurazione semplice e il basso consumo di risorse. Questo tutorial mostra come installare Nginx su un openSUSE 12.1 con supporto PHP5 (tramite PHP-FPM) e supporto MySQL. PHP-FPM è un'implementazione PHP FastCGI alternativa, ha alcune funzionalità aggiuntive utili per i siti di qualsiasi dimensione, in particolare i siti più trafficati).
La prima cosa che devi fare è accedere come root. Puoi accedere come root in openSUSE digitando nel terminale:
raj@geeksite:~ $ su
Installazione di MySQL 5:
Per prima cosa installeremo MySQL emettendo il seguente comando.
root@geek:~# zypper in mysql-community-server mysql-community-server-client php5-mysql
Avvia il server MySQL.
root@geesksite:~ # systemctl start mysql.service
Passaggio 3:per avviare MySQL durante ogni avvio, digita quanto segue sul terminale e premi Invio.
root@geesksite:~ # systemctl enable mysql.service
Il prossimo passo è rendere sicuro MySQL usando mysql_secure_installation comando.
Questo programma ti consente di migliorare la sicurezza della tua installazione di MySQL nei seguenti modi:
- Puoi impostare una password per
root
conti. - Puoi rimuovere
root
account accessibili dall'esterno dell'host locale. - Puoi rimuovere account utente anonimi.
- Puoi rimuovere il
test
database (a cui per impostazione predefinita possono accedere tutti gli utenti, anche anonimi) e privilegi che consentono a chiunque di accedere a database con nomi che iniziano contest_
.
root@geeksite:~ # mysql_secure_installation
NOTA: L'ESECUZIONE DI TUTTE LE PARTI DI QUESTO SCRIPT È CONSIGLIATA PER TUTTO MySQL
SERVER IN PRODUZIONE UTILIZZATI! PER FAVORE, LEGGERE ATTENTAMENTE OGNI PASSAGGIO!
Per accedere a MySQL per proteggerlo, avremo necessità della corrente
password per l'utente root. Se hai appena installato MySQL, e
non hai ancora impostato la password di root, la password sarà vuota,
quindi dovresti premere invio qui.
Inserisci la password corrente per root (inserisci per none): <– ENTER
OK, password usata con successo, andiamo avanti...
L'impostazione della password di root assicura che nessuno possa accedere a MySQL
utente root senza l'appropriata autorizzazione.
Impostare la password di root? [S/n] <– INVIO
Nuova password: <– yourrootsqlpassword
Inserisci nuovamente la nuova password: <– yourrootsqlpassword
Password aggiornata con successo!
Ricaricamento delle tabelle dei privilegi..
… Successo!
Per impostazione predefinita, un'installazione di MySQL ha un utente anonimo, che consente a chiunque
per accedere a MySQL senza dovere avere un account utente creato per
loro. Questo è destinato solo per i test e per effettuare l'installazione
vai un po' più fluido. Dovresti rimuoverli prima di trasferirti in un
ambiente di produzione.
Rimuovere utenti anonimi? [S/n] <– ENTER
… Successo!
Normalmente, root dovrebbe essere consentito solo di connettersi da "localhost". Questo
garantisce che qualcuno non possa indovinare la password root dalla rete.
Non consentire l'accesso come root da remoto? [S/n] <– INVIO
… Successo!
Per impostazione predefinita, MySQL viene con un database denominato 'test' che tutti possono
accesso. Anche questo è destinato solo a test, e dovrebbe essere rimosso
prima di trasferirsi in un ambiente di produzione.
Rimuovere il database di test e accedervi? [S/n] <– INVIO
– Dropping test database...
… Successo!
– Rimozione dei privilegi sul database di test...
… Successo!
Ricaricare le tabelle dei privilegi assicurerà che tutte le modifiche apportate fino a quel momento
entrerà in vigore immediatamente.
Ricaricare le tabelle dei privilegi ora? [S/n] <– INVIO
… Successo!
Pulizia ...
Tutto fatto! Se hai completato tutti i passaggi precedenti, il tuo MySQL
l'installazione dovrebbe essere sicura.
Grazie per aver utilizzato MySQL!
Installazione di Nginx:
Nginx è già disponibile nel pacchetto openSUSE, quindi esegui il comando seguente per installare Nginx.
root@geeksite:~ # zypper in nginx-1.0
Avvia Nginx dopo l'installazione.
root@geekssite:~ # systemctl start nginx.service
Verifica la tua installazione di Nginx aprendo il tuo browser web e vai a http://127.0.0.1 . Otterrai la seguente pagina web che dice 403 Proibito, questo è dovuto alla mancanza di un file index.html nella directory /srv/www/htdocs.
La radice del documento nginx predefinita su openSUSE 12.1 è /srv/www/htdocs. I file di configurazione si trovano nella directory /etc/nginx.
Avvia automaticamente Nginx.
root@geeksite:~ # systemctl enable nginx.service
Installazione di PHP5-FPM:
Il passo successivo consiste nell'installare PHP5 tramite PHP-FPM (PHP-FPM (FastCGI Process Manager), è un'implementazione alternativa di PHP FastCGI. ha alcune funzionalità aggiuntive utili per siti di qualsiasi dimensione, in particolare i siti più affollati). Installalo eseguendo il seguente comando.
root@geeksite:~ # yum install php5-fpm
Prima di avviare PHP-FPM; dobbiamo avere il file di configurazione, copiare il file di configurazione di esempio in /etc/php5/fp/php-fpn.conf.
root@geeksite:~ # cp /etc/php5/fpm/php-fpm.conf.default /etc/php5/fpm/php-fpm.conf
Modifica il /etc/php5/fpm/php-fpm.conf file, cambia error_log in /var/log/php-fpm.log e decommenta pm.min_spare_servers e pm.max_spare_servers .
[.More.] error_log = /var/log/php-fpm.log [.More.] pm.min_spare_servers = 5 [.More.] pm.max_spare_servers = 35 [.More.]
Avvia o riavvia il servizio PHP-FPM.
root@geeksite:~ # systemctl restart php-fpm.service
Riavvia il server Nginx.
root@geeksite:~ # systemctl restart nginx.service
Abilitazione e test del supporto PHP-FPM su host virtuale:
Creiamo un host virtuale basato sul nome sul server Nginx per i seguenti dettagli.
Nome del server : geeksite.local
Radice del documento: /srv/www/htdocs/geeksite.local
Possiamo posizionare il file di configurazione in /etc/nginx/vhosts.d directory che non esiste, quindi crea la directory.
root@geeksite:~ # mkdir /etc/nginx/vhosts.d
Crea il file di configurazione chiamato virtual.conf e Modifica /etc/nginx/conf.d/virtual.conf .
root@geeksite:~ # vi /etc/nginx/vhosts.d/virtual.conf
Aggiungi il seguente contenuto.
server { server_name geeksite.local; root /srv/www/htdocs/geeksite.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /srv/www/htdocs/geeksite.local$fastcgi_script_name; } }
Crea una voce host per il dominio geeksite.local nel file /etc/hosts.
root@geeksite:~ # vi /etc/hosts
aggiungi la voce per geeksite.local, la riga dovrebbe apparire come sotto.
127.0.0.1 localhost.localdomain localhost geeeksite.local
Crea la directory principale del documento
root@geeksite:~ # mkdir /srv/www/htdocs/geeksite.local
Per testare il PHP, posiziona un file PHP nella radice del documento dell'host virtuale creato.
Riavvia i servizi Nginx e PHP-FPM.
root@geeksite:~ # systemctl restart nginx.service
root@geeksite:~ # systemctl restart php-fpm.service
Nel terminale copia/incolla la seguente riga:
root@geeksite:~ # vi /srv/www/htdocs/geeksite.local/index.php
Questo aprirà un file chiamato index.php.
Copia/incolla questa riga nel file index.php:
<?php phpinfo(); ?>
Salva e chiudi il file. usa Esc +;wq per salvare il file.
Ora apri il tuo browser web e digita quanto segue nell'indirizzo web:
http://geeksite.local
La pagina appare come di seguito:
Dalla schermata sopra, PHP5 funziona e funziona tramite FPM/FastCGI, come mostrato nella riga dell'API del server. Se scorri più in basso, vedrai tutti i moduli che sono già abilitati in PHP5.
Scorri il browser verso il basso e cerca le informazioni sul supporto MySQL.
Questo è tutto!