Como instalar o Craft CMS no FreeBSD 12

Introdução

O Craft CMS é um CMS de código aberto escrito em PHP. O código-fonte do Craft CMS está hospedado no GitHub . Este guia mostrará como instalar o Craft CMS com Nginx em uma nova instância do FreeBSD 12 Vultr.

Exigências

O ofício exige o seguinte:

  • PHP versão 7.0 ou superior com as seguintes extensões:
    • ctype
    • curl
    • gd ou imagemagick
    • iconv
    • json
    • mbstring
    • openssl
    • pcre
    • pdo
    • pdo mysql
    • pdo postgresql
    • reflection
    • spl
    • zip
    • intl
    • dom
  • MySQL versão 5.5 ou superior com InnoDB, MariaDB versão 5.5 ou superior ou PostgreSQL versão 9.5 ou superior
  • Pelo menos 256 MB de memória alocada para PHP
  • Pelo menos 200 MB de espaço livre em disco
  • Nginx
  • Compositor

Antes de você começar

Verifique a versão do FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Verifique se o seu sistema FreeBSD está atualizado.

freebsd-update fetch install
pkg update && pkg upgrade -y

Instale os pacotes necessários.

pkg install -y sudo vim unzip curl wget bash socat git

Crie uma nova conta de usuário com seu nome de usuário preferido. Nós vamos usar 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!

Execute o visudocomando e remova o comentário da %wheel ALL=(ALL) ALLlinha, para permitir que os membros do wheelgrupo executem qualquer comando.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Agora, mude para o usuário recém-criado com su.

su - johndoe

NOTA: Substitua johndoepelo seu nome de usuário.

Configure o fuso horário.

sudo tzsetup

Etapa 1 - Instale o PHP e as extensões PHP necessárias

Instale o PHP, bem como as extensões PHP necessárias.

sudo pkg install -y php72 php72-mbstring php72-tokenizer php72-pdo php72-pdo_mysql php72-openssl php72-hash php72-json php72-phar php72-filter php72-zlib php72-dom php72-xml php72-xmlwriter php72-xmlreader php72-pecl-imagick php72-curl php72-session php72-ctype php72-iconv php72-gd php72-simplexml php72-zip php72-filter php72-tokenizer php72-calendar php72-fileinfo php72-intl php72-mysqli php72-phar php72-opcache

Verifique a versão.

php --version
# PHP 7.2.19 (cli) (built: Jun 13 2019 01:11:35) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Soft-link php.ini-productionpara php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Ative e inicie o PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Etapa 2 - Instale o MariaDB e crie um banco de dados

Instale o MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Verifique a versão.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.24-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Inicie e ative o MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Execute o mysql_secure_installationscript para melhorar a segurança da sua instalação do MariaDB.

sudo mysql_secure_installation

Efetue login no MariaDB como o usuário root.

mysql -u root -p
# Enter password:

Crie um novo banco de dados e usuário. Lembre-se das credenciais para este novo usuário.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit;

Etapa 3 - Instalar e configurar o Nginx

Instale o Nginx.

sudo pkg install -y nginx

Verifique a versão.

nginx -v
# nginx version: nginx/1.14.2

Habilite e inicie o Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Execute sudo vim /usr/local/etc/nginx/craft.confe configure o Nginx para o Craft.

server {

  listen 80;
  listen [::]:80;
  server_name example.com;
  root /usr/local/www/craft/web;

  index index.php;

  location / {
    try_files $uri $uri/ /index.php$is_args$args;
  }

  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass 127.0.0.1:9000;
  }

}

Salve o arquivo e saia.

Agora precisamos incluir craft.confno nginx.confarquivo principal .

Execute sudo vim /usr/local/etc/nginx/nginx.confe adicione a seguinte linha ao http {}bloco.

include craft.conf;

Teste a configuração.

sudo nginx -t

Recarregue o Nginx.

sudo service nginx reload

Etapa 4 - Instalar o Composer

Instale o Composer globalmente.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Verifique a versão.

composer --version
# Composer version 1.8.6 2019-06-11 15:03:05

Etapa 5 - Baixe e instale o Craft CMS

Crie um diretório raiz do documento.

sudo mkdir -p /usr/local/www/craft

Altere a propriedade do /usr/local/www/craftdiretório para johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/craft

Navegue para o diretório raiz do documento.

cd /usr/local/www/craft

Faça o download da versão estável mais recente do Craft CMS via composer.

composer create-project craftcms/craft .

Altere a propriedade do /usr/local/www/craftdiretório para www.

sudo chown -R www:www /usr/local/www/craft

No navegador da web, vá para http://<Hostname>/index.php?p=admin/install, substituindo <Hostname>pelo nome do host do servidor da web. O assistente de configuração do Craft irá cumprimentá-lo. Para acessar a interface administrativa do Craft, acrescente /adminao seu IP / domínio.



A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.