Laravel Winter CMS —— 安装和配置
安装
有两种方法可以安装 Winter, 要么使用 基于 Web 的安装程序 ,要么使用 命令行说明安装 。在继续之前,您应该检查您的服务器是否满足最低系统要求。
最低系统要求
Winter CMS 对网络托管有一些服务器要求:
- PHP 7.2或更高版本
- PDO PHP 扩展(以及要连接到的数据库的相关驱动程序)
- cURL PHP 扩展
- OpenSSL PHP 扩展
- Mbstring PHP 扩展
- ZipArchive PHP 扩展
- GD PHP 扩展
- SimpleXML PHP 扩展
有些操作系统发行版可能需要您手动安装一些必需的 PHP 扩展。
使用 Ubuntu 时,可以运行以下命令来安装所有必需的扩展:
sudo apt-get update &&
sudo apt-get install php php-ctype php-curl php-xml php-fileinfo php-gd php-json php-mbstring php-mysql php-sqlite3 php-zip
在使用 sqlserver 数据库引擎时,需要安装用户定义 组连接 聚合。
基于 Web 的安装
对于非技术用户,Web 安装 是 Winter 的推荐方法。 它比命令行安装简单,不需要任何特殊技能。
记住: 如果您是开发人员,我们建议您通过 Composer安装
- 在网络服务器上准备一个空的目录,用于安装 Winter CMS。它可以是主域、子域或子文件夹
- 选择最新版的 Winter CMS并 下载 "install.zip" 文件到这个目录。
- 解压下载的 ZIP 文件。
- 授予所有提取的文件和文件夹的写权限。
- 在你的网页浏览器中,导航到指向该文件夹的 URL,并包含
/install.html
在 URL 的末尾。 - 按照安装程序中给出的说明进行操作。
安装故障排查
-
无法连接到 Winter Marketplace API:如果您的服务器有防火墙阻止对端口 443 的请求,请联系您的系统管理员以允许访问此端口。
-
安装程序在「确定依赖项」或「安装依赖项」步骤失败:在幕后,web 装程序使用 Composer 处理和安装运行 Winter CMS 所需的依赖项 - 请注意,您不需要 将 Composer 安装为 CLI 工具才能工作。此过程可能需要更多内存才能完成 - 如果您的环境限制了应用程序的内存使用量,请考虑暂时为安装程序提供最多 1.5GB 的内存,然后在安装完成后减少它。安装程序将尝试自动执行此操作。
-
安装程序无法正常显示或运行:Web 安装程序基于现代前端框架构建,可能需要使用更新的浏览器版本。考虑安装 Mozilla Firefox、Microsoft Edge 或 Google Chrome 并使其保持最新状态。
-
无法解析 JSON 响应:根据您的互联网连接,下载所有源文件的时间可能会超过
max_execution_time
PHP 配置值;导致最终下载了不完整的文件。修改 PHP 配置以增加此值并重试。 -
无法确定 Winter CMS 的依赖项。您的 composer.json 文件无效。:此错误已由使用共享主机的人报告,通常是由
disable_functions
PHP INI 设置中列出的proc_*
方法或pcntl
未启用 PHP 扩展。不幸的是,在这个阶段,没有解决方法,但是您可以在没有这些限制的本地开发环境中使用安装程序,然后在完成后简单地将完整目录复制到您的共享主机。对此,我们正在积极寻求更长效的解决办法。
命令行安装
如果您更习惯使用命令行或想要使用Composer,在 控制台界面 上有一个 CLI 安装过程。
安装后步骤
安装完成后,您可能需要设置一些内容。
删除安装文件
如果您使用了 Wizard 安装程序,出于安全考虑,您应该确认安装文件已被删除。 Winter 安装程序会尝试自行清理,但您应该始终验证它们是否已成功删除:
install/ <== 安装目录
install.html <== 安装脚本
查看配置
配置文件存储在应用程序的 config 目录中。虽然每个文件都包含每个设置的说明,但请务必查看适用于您的情况的 常用配置选项。
例如,在生产环境中,您可能希望启用 CSRF 保护。在开发环境中,您可能希望启用 bleeding edge updates。
虽然大多数配置是可选的,但我们强烈建议为生产环境禁用 调试模式。您可能还想使用 公共文件夹 以提高安全性。
设置调度器
为了计划任务正常运行,您应该将以下 Cron 条目添加到您的服务器。编辑 crontab 通常使用命令 crontab -e
执行。
* * * * * php /path/to/artisan schedule:run >> /dev/null 2>&1
请务必将 /path/to/artisan 替换为 Winter 根目录中 artisan 文件的绝对路径。这个 Cron 每分钟都会调用命令调度程序。然后 Winter 评估所有计划任务并运行到期的任务。
注意:如果您要将其添加到
/etc/cron.d
,则需要在* * * * *
之后立即指定一个用户。
使用队列
选择设置一个外部队列来处理 队列任务 ,默认情况下这些将由平台异步处理。 可以通过在 config/queue.php
中设置 default
参数来更改此行为。
如果使用 database
作为队列驱动,最好为命令 php artisan queue:work --once
添加一个 Crontab 条目以处理队列中的第一个可用任务。
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。