在Ubuntu 16.04 LTS上安装Fork CMS

Fork是用PHP编写的开源CMS。Fork的源代码托管在GitHub上。本指南将向您展示如何在新的Ubuntu 16.04 LTS Vultr实例上安装Fork CMS。

要求

  • PHP 7.1或更高版本。
  • MySQL 5.0或更高版本。
  • NGINX或Apache 2.0 .htaccessmod rewritemod expires(可选但推荐)和mod deflate(可选)启用。

在你开始之前

检查Ubuntu版本。

lsb_release -ds
# Ubuntu 16.04.3 LTS

创建一个non-root具有sudo访问权限的新用户帐户并切换到该帐户。

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

注意用您的用户名替换johndoe

设置时区。

sudo dpkg-reconfigure tzdata

确保您的系统是最新的。

sudo apt update && sudo apt upgrade -y

第1步-安装PHP和所需的PHP扩展,MySQL和NGINX

Ubuntu在其默认软件存储库中未提供最新的PHP版本。我们需要添加一个社区维护的个人包裹档案(PPA)。

下载并安装PHP 7.1和必需的PHP扩展。

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt install -y php7.1 php7.1-cli php7.1-fpm php7.1-curl php7.1-mbstring php7.1-gd php7.1-intl php7.1-mysql php7.1-xml

检查PHP版本。

php --version

# PHP 7.1.11-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Oct 27 2017 13:49:56) ( NTS )
# Copyright (c) 1997-2017 The PHP Group
# Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
#     with Zend OPcache v7.1.11-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2017, by Zend Technologies

由于现有许多Vultr文档详细介绍了MySQL和NGINX的安装,因此本文将仅介绍NGINX的配置。

第2步-配置NGINX

运行sudo vim /etc/nginx/sites-available/fork.conf并复制/粘贴以下内容。

server {
    listen 80;

    root /var/www/fork;
    index index.php index.html;

    server_name example.com;

    location / {
        # Checks whether the requested url exists as a file $uri or directory $uri/ in the root, else redirect to /index.php.
        try_files $uri $uri/ @redirects;
    }

    location @redirects {
        rewrite ^ /index.php;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.1-fpm.sock; # Make sure to doublecheck this!
        fastcgi_index index.php;
        fastcgi_read_timeout 60;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # Don't pollute the logs with common requests
    location = /robots.txt  { access_log off; log_not_found off; }
    location = /favicon.ico { access_log off; log_not_found off; }

    # As Fork CMS has the app_root as doc_root, we need to restrict access to a few things for security purposes!
    location ~* ^/(composer\..*|vendor\/.*|Procfile$|\.git\/.*|src\/Console.*|.*\.gitignore|\.editorconfig|\.travis.yml|autoload\.php|bower\.json|phpunit\.xml\.dist|.*\.md|app\/logs\/.*|app\/config\/.*|src\/Frontend\/Cache\/CompiledTemplates.*|src\/Frontend\/Cache\/Locale\/.*\.php|src\/Frontend\/Cache\/Navigation\/.*\.php|src\/Frontend\/Cache\/Search\/.*|src\/Backend\/Cache\/CompiledTemplates\/.*|src\/Backend\/Cache\/Locale\/.*\.php)$ {
        deny all;
        access_log off;
        log_not_found off;
    }

    # Deny access to dot-files.
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

您将进行的更改摘要如下。

  • 更改root指令的值以指向您网站的正确位置,例如/var/www/fork
  • 更改server_name指令的值以指向您的域名或IP地址。
  • 确保检查fastcgi_pass设置是否正确。

fork.conf通过将文件链接到sites-enabled目录来激活新配置。

sudo ln -s /etc/nginx/sites-available/fork.conf /etc/nginx/sites-enabled/

测试NGINX配置。

sudo nginx -t

重新加载NGINX并重新启动PHP7.1-FPM

    sudo systemctl reload nginx.service
    sudo systemctl restart php7.1-fpm.service

步骤3-下载并安装Composer

下载Composer依赖项。

sudo apt install -y curl git unzip

下载并安装Composer,它是PHP的依赖项管理器。

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { 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

检查Composer版本。

composer --version
# Composer version 1.5.2 2017-09-11 16:59:25

步骤4-通过Composer下载并安装Fork CMS

创建一个文档根目录。

sudo mkdir -p /var/www/fork

/var/www/fork目录的所有权更改为johndoe

sudo chown -R johndoe:johndoe /var/www/fork

从命令行下载Fork CMS的最新稳定版本。

cd /var/www/fork
composer create-project forkcms/forkcms .

/var/www/fork目录的所有权更改为www-data

sudo chown -R www-data:www-data /var/www/fork

编辑app/config/parameters.yml.dist文件并设置数据库信息。

sudo vim /var/www/fork/app/config/parameters_install.yml

使用您喜欢的网络浏览器,打开您的站点并按照Fork CMS安装程序进行操作。按照安装程序进行操作后,您应该已启动并运行Fork。要访问Fork管理员区域,只需将其追加/private到您的站点URL。

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息