OpenBSD est principalement utilisé dans les implémentations de pare-feu, cependant, de nombreuses personnes dans le monde utilisent OpenBSD comme serveur Web. Cela inclut les programmeurs et les administrateurs système. Nous supposons une connaissance d'OpenBSD, Nginx et Unix en général.
Nginx (moteur x) est un serveur proxy HTTP et inverse, ainsi qu'un serveur proxy de messagerie, écrit par Igor Sysoev. Depuis longtemps, il fonctionne sur de nombreux sites russes très chargés. (à partir de leur site Web )
PHP-FPM (FastCGI Process Manager) est une implémentation alternative de PHP FastCGI avec quelques fonctionnalités supplémentaires utiles pour les sites de toute taille, en particulier les sites les plus occupés. (à partir de leur site Web )
Exigences:
- OpenBSD 5.6 installé sur votre VPS vultr.com.
- L'ensemble PKG_PATH suivant.
PKG_PATH = ftp://ftp.openbsd.org/pub/OpenBSD/5.6/packages/\`arch -s\`
Installer Nginx
$ sudo pkg_add -v nginx
Ambiguous: choose package for nginx
a 0: <None>
1: nginx-1.4.7p0
2: nginx-1.4.7p0-lua
3: nginx-1.4.7p0-naxsi
4: nginx-1.4.7p0-passenger
5: nginx-1.5.7p3
6: nginx-1.5.7p3-lua
7: nginx-1.5.7p3-naxsi
8: nginx-1.5.7p3-passenger
Your choice:
Pour les besoins de ce document, nous installons l'option "5".
Installez PHP-FPM
$ sudo pkg_add -v php-fpm-5.5.14.tgz
Le /etc/rc.conf.local
doit contenir les éléments suivants:
nginx_flags=""
Et /etc/rc.conf
doit contenir les éléments suivants pour que ces services démarrent automatiquement après chaque redémarrage.
# rc.d(8) packages scripts
# started in the specified order and stopped in reverse order
pkg_scripts=nginx
Modifier nginx.conf
Exigences de base pour /etc/nginx/nginx.conf
dans la section serveur .
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
Modifier php-fpm.conf
Mettez à jour les éléments suivants dans /etc/php-fpm.conf
:
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's
; group will be used.
user = www
group = www
; The address on which to accept FastCGI requests.
; Valid syntaxes are:
; 'ip.add.re.ss:port' - to listen on a TCP socket to a specific address on
; a specific port;
; 'port' - to listen on a TCP socket to all addresses on a
; specific port;
; '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = 127.0.0.1:9000
Installez MySQL
$ sudo pkg_add -v mysql-server-5.1.73p0v0.tgz
Update candidates: quirks-2.9 -> quirks-2.9 (ok)
quirks-2.9 signed on 2014-07-31T22:37:55Z
mysql-server-5.1.73p0v0:p5-Net-Daemon-0.48: ok
mysql-server-5.1.73p0v0:p5-PlRPC-0.2018p1: ok
mysql-server-5.1.73p0v0:p5-Clone-0.36p0: ok
mysql-server-5.1.73p0v0:p5-Params-Util-1.07p0: ok
mysql-server-5.1.73p0v0:p5-SQL-Statement-1.405: ok
mysql-server-5.1.73p0v0:p5-FreezeThaw-0.5001: ok
mysql-server-5.1.73p0v0:p5-MLDBM-2.05: ok
mysql-server-5.1.73p0v0:p5-DBI-1.631p0: ok
mysql-server-5.1.73p0v0:mysql-client-5.1.73v0: ok
mysql-server-5.1.73p0v0:p5-DBD-mysql-4.027: ok
mysql-server-5.1.73p0v0: ok
The following new rcscripts were installed: /etc/rc.d/mysqld
See rc.d(8) for details.
Look in /usr/local/share/doc/pkg-readmes for extra documentation.
Extracted 39040357 from 39044890
La configuration initiale
Créez la base de données initiale:
$ sudo /usr/local/bin/mysql_install_db
Vous pouvez exécuter le /usr/local/bin/mysql_secure_installation
script pour optimiser votre installation MySQL. Sinon, définissez directement le mot de passe root.
$ sudo /usr/local/bin/mysqladmin -u root password 'password'
Pour accéder à MySQL pour les tâches administratives - comme la création de bases de données et d'utilisateurs, vous pouvez utiliser la commande suivante:
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 47
Server version: 5.1.73-log OpenBSD port: mysql-server-5.1.73p0v0
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Ajouter le support MySQL pour PHP
$ sudo pkg_add -v php-pdo_mysql-5.5.14.tgz
Démarrez les démons
$ sudo /etc/rc.d/nginx start
$ sudo /etc/rc.d/php-fpm start
$ sudo /etc/rc.d/mysqld start
Testez votre installation en écrivant un base info.php
fichier dans une racine de document /var/www/htdocs/example.com
.
<?php
phpinfo();
?>
En cas de succès, vous pourrez consulter la page Web d'informations PHP.
Journaux
Les fichiers journaux de base se trouvent dans le /var/log/nginx
répertoire.
Prendre plaisir.