Requisits
Abans que comencis
Instal·leu PHP
Instal·leu MariaDB i creeu una base de dades
Instal·leu i configureu Nginx
Baixeu i instal·leu Bolt CMS
Bolt és un CMS de codi obert escrit en PHP. El codi font de Bolt està allotjat a GitHub . Aquesta guia us mostrarà com instal·lar Bolt CMS en una nova instància de FreeBSD 12 Vultr.
Requisits
- PHP versió 5.5.9 o superior.
- Les següents extensions comunes de PHP:
pdo, mysqlnd(per utilitzar MySQL com a base de dades), pgsql(per utilitzar PostgreSQL com a base de dades), openssl, curl, gd, intl(opcional però recomanable), json, mbstring(opcional però recomanable), opcache(opcional però recomanable), posix, xml, fileinfo, exif, i zip.
- Un mínim de 32 MB de memòria assignat a PHP.
- Base de dades SQLite, MySQL/MariaDB o PostgreSQL. Aquest tutorial utilitzarà MariaDB.
- Nginx o Apache amb
mod_rewritehabilitat. Aquest tutorial utilitzarà Nginx.
Abans que comencis
Comproveu la versió de FreeBSD.
uname -ro
# FreeBSD 12.0-RELEASE
Assegureu-vos que el vostre sistema FreeBSD estigui actualitzat.
freebsd-update fetch install
pkg update && pkg upgrade -y
Instal·lar sudo, vim, unzip, wget, bash, socati gitcerts programes que no són presents en el sistema.
pkg install -y sudo vim unzip wget bash bash-completion socat git
Creeu un compte d'usuari nou amb el vostre nom d'usuari preferit (farem servir johndoe).
adduser
# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!
Executeu l' visudoordre i descomenteu la %wheel ALL=(ALL) ALLlínia per permetre que els membres del wheelgrup executin qualsevol ordre.
visudo
# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL
Ara, canvieu al vostre usuari acabat de crear amb l' suordre.
su - johndoe
NOTA: Substituïu-lo johndoepel vostre nom d'usuari.
Configura la zona horària.
sudo tzsetup
Instal·leu PHP
Baixeu i instal·leu PHP, així com les extensions PHP necessàries.
sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-pgsql php72-sqlite3 php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache php72-phar php72-fileinfo php72-sqlite3 php72-pdo_sqlite php72-intl php72-posix php72-exif
Comproveu la versió.
php --version
# PHP 7.2.13 (cli) (built: Dec 23 2018 01:12:48) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.2.13, Copyright (c) 1999-2018, by Zend Technologies
Enllaç suau php.ini-productiona php.ini.
sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini
Activeu i inicieu PHP-FPM.
sudo sysrc php_fpm_enable=yes
sudo service php-fpm start
Instal·leu MariaDB i creeu una base de dades
Baixeu i instal·leu MariaDB.
sudo pkg install -y mariadb102-client mariadb102-server
Comproveu la versió.
mysql --version
# mysql Ver 15.1 Distrib 10.2.19-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1
Habiliteu i inicieu MariaDB.
sudo sysrc mysql_enable="yes"
sudo service mysql-server start
Executeu l' mysql_secure_installationscript per millorar la seguretat de la vostra instal·lació de MariaDB.
sudo mysql_secure_installation
Contesta cadascuna de les preguntes.
Enter current password for root (enter for none): <enter>
Set root password? [Y/n] y
New password: ********************************
Re-enter new password: ********************************
Remove anonymous users? [Y/n] y
Disallow root login remotely? [Y/n] y
Remove test database and access to it? [Y/n] y
Reload privilege tables now? [Y/n] y
. . .
All done!
Inicieu sessió a MariaDB com a usuari root.
sudo mysql -u root -p
# Enter password:
Creeu una base de dades i un usuari MariaDB nous i recordeu les credencials.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
Sortiu de MariaDB.
exit
Instal·leu Nginx.
sudo pkg install -y nginx
Comproveu la versió.
nginx -v
# nginx version: nginx/1.14.1
Activeu i inicieu Nginx.
sudo sysrc nginx_enable=yes
sudo service nginx start
Executeu sudo vim /usr/local/etc/nginx/bolt.confi configureu Nginx per a Bolt.
server {
listen [::]:80;
listen 80;
server_name example.com; # Check this
index index.php index.html;
root /usr/local/www/bolt/public; # Check this
# Block access to "hidden" files
location ~ /\. {
deny all;
}
# Block access to Apache .htaccess & .htpasswd files
location ~ /\.(htaccess|htpasswd)$ {
deny all;
}
# Block access to Sqlite database files
location ~ /\.(?:db)$ {
deny all;
}
# Block access to Markdown, Twig & YAML files directly
location ~* /(.*)\.(?:markdown|md|twig|yaml|yml)$ {
deny all;
}
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ [^/]\.php(/|$) {
try_files /index.php =404;
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTP_PROXY "";
fastcgi_param HTTPS $https if_not_empty;
fastcgi_pass 127.0.0.1:9000; # Check this
include fastcgi_params;
}
}
Deseu el fitxer i sortiu amb :+ W+ Q.
Ara hem d'incloure el bolt.conffitxer al nginx.conffitxer principal .
Executeu sudo vim /usr/local/etc/nginx/nginx.confi afegiu la línia següent al http {}bloc.
include bolt.conf;
Prova la configuració de Nginx.
sudo nginx -t
Torna a carregar Nginx.
sudo service nginx reload
Baixeu i instal·leu Bolt CMS
Creeu un directori arrel del document.
sudo mkdir -p /usr/local/www/bolt
Canvia la propietat del /usr/local/www/boltdirectori a johndoe.
sudo chown -R johndoe:johndoe /usr/local/www/bolt
Navegueu al directori arrel del document.
cd /usr/local/www/bolt
Baixeu la darrera versió estable de Bolt CMS des de la línia d'ordres.
wget https://bolt.cm/distribution/bolt-latest.zip
Descomprimiu Bolt CMS, elimineu el fitxer zip descarregat i moveu els fitxers i directoris de Bolt CMS al /usr/local/www/boltdirectori.
unzip bolt-latest.zip
rm bolt-latest.zip
mv bolt-v3.6.3/* bolt-v3.6.3/.* . # Just press enter on warning
rmdir bolt-v3.6.3/
Per acabar la instal·lació, haureu de canviar el nom dels fitxers següents:
mv .bolt.yml.dist .bolt.yml
mv composer.json.dist composer.json
mv composer.lock.dist composer.lock
mv src/Site/CustomisationExtension.php.dist src/Site/CustomisationExtension.php
Canvia la propietat del /usr/local/www/boltdirectori a www.
sudo chown -R www:www /usr/local/www/bolt
Obriu el vostre domini/IP al navegador web i seguiu l'assistent d'instal·lació de Bolt CMS. Bolt utilitza SQLite (per defecte) com a base de dades. Si voleu utilitzar una altra base de dades compatible, podeu configurar-la al app/config/config.ymlfitxer. Després d'això, tindreu el Bolt instal·lat al vostre servidor FreeBSD 12. Per accedir a la interfície administrativa de Bolt, afegiu /bolt-lo al vostre domini/IP. Si voleu obtenir més informació, consulteu la documentació de Bolt a https://docs.bolt.cm .