安装要求
PHP环境要求
- PHP >= 8.0.2
- BCMath PHP 扩展
- Ctype PHP 扩展
- DOM PHP 拓展
- Fileinfo PHP 扩展
- JSON PHP 扩展
- Mbstring PHP 扩展
- OpenSSL PHP 扩展
- PDO PHP 扩展
- Tokenizer PHP 扩展
- XML PHP 扩展
- Imagick 拓展
- Redis 拓展
- exec、shell_exec 函数
- readlink、symlink 函数
- putenv、getenv 函数
运行环境
- Nginx 1.21+
- Mysql 5.7+
- PHP 8.0+
- Redis 7.0+
- Supervisor
说明
title:说明
在群晖 WebStation 和 PHP8 环境下进行安装。
群晖系统DSM7以上
安装教程
- 安装相关套件,并配置PHP8环境(部分套件需要配置套件源)

- 在 WebStation 中创建一个网站

- 在网站目录丢入 version.php 检查PHP环境是否开启
<?php
echo PHP_VERSION;
echo '<br/>';
if(function_exists('exec'))
{
echo 'Yes exec<br/>';
}else{
echo 'Not have exec <br/>';
};
if(function_exists('shell_exec'))
{
echo 'Yes shell_exec<br/>';
}else{
echo 'Not have shell_exec <br/>';
}
if(function_exists('readlink'))
{
echo 'Yes readlink<br/>';
}else{
echo 'Not have readlink <br/>';
}
if(function_exists('symlink'))
{
echo 'Yes symlink<br/>';
}else{
echo 'Not have symlink<br/>';
}
if(function_exists('putenv'))
{
echo 'Yes putenv<br/>';
}else{
echo 'Not have putenv <br/>';
}
if(function_exists('getenv'))
{
echo 'Yes getenv<br/>';
}else{
echo 'Not have getenv <br/>';
}
if(extension_loaded('mysqli')){
echo 'Yes MySQL<br/>';
}
else{
echo 'Not have MySQL<br/>';
}
if(extension_loaded('bcmath')){
echo 'Yes BCMath<br/>';
}
else{
echo 'Not have BCMath<br/>';
}
if(extension_loaded('ctype')){
echo 'Yes Ctype<br/>';
}
else{
echo 'Not have Ctype<br/>';
}
if(extension_loaded('dom')){
echo 'Yes DOM<br/>';
}
else{
echo 'Not have DOM<br/>';
}
if(extension_loaded('fileinfo')){
echo 'Yes Fileinfo<br/>';
}
else{
echo 'Not have Fileinfo<br/>';
}
if(extension_loaded('json')){
echo 'Yes JSON<br/>';
}
else{
echo 'Not have JSON<br/>';
}
if(extension_loaded('mbstring')){
echo 'Yes Mbstring<br/>';
}
else{
echo 'Not have Mbstring<br/>';
}
if(extension_loaded('openssl')){
echo 'Yes OpenSSL<br/>';
}
else{
echo 'Not have OpenSSL<br/>';
}
if(extension_loaded('PDO')){
echo 'Yes PDO<br/>';
}
else{
echo 'Not have PDO<br/>';
}
if(extension_loaded('tokenizer')){
echo 'Yes Tokenizer<br/>';
}
else{
echo 'Not have Tokenizer<br/>';
}
if(extension_loaded('xml')){
echo 'Yes XML<br/>';
}
else{
echo 'Not have XML<br/>';
}
if(extension_loaded('imagick')){
echo 'Yes Imagick<br/>';
}
else{
echo 'Not have Imagick<br/>';
}
if(extension_loaded('redis')){
echo 'Yes Redis<br/>';
}
else{
echo 'Not have Redis<br/>';
}
?>
- 访问站点 https://xxxx/version.php 检测环境,默认状态下会有几个扩展未开启,未开启状态在此未截图
- 打开SSH配置PHP扩展在 /usr/local/etc/php80/cli/php.ini 和 /volume1/@appstore/PHP8.0/usr/local/etc/php80/cli/php.ini 中修改 extension_dir = /usr/local/lib/php80/modules 并添加扩展,同时脚本语言设置中也开启所有扩展
vim /usr/local/etc/php80/cli/php.ini
/volume1/@appstore/PHP8.0/usr/local/etc/php80/cli/php.ini

extension_dir = "/volume1/@appstore/PHP8.0/usr/local/lib/php80/modules/"$
extension = mysqli.so$
extension = bcmath.so$
extension = openssl.so$
extension = imagick.so$
extension = redis.so$
extension = memcached.so$
extension = apcu.so$

- 重启PHP8,并重启服务器,然后访问站点

- 之后按正常情况安装即可
- 在 phpMyAdmin 添加该网站用的用户名和数据库。
- 将LskyProV2的源码上传到合适的目录,无需默认目录。
- 在WebStation中添加虚拟主机站点,并将Web目录设置为源码文件下的 public 文件夹。
- 设置文件夹权限和NGINX静态配置。

location / {
try_files $uri $uri/ /index.php?$query_string;
}
- 然后访问站点。
- 特别的对于 V1企业版本需要先在SSH站点目录下输入 php80 artisan key:generate 然后配置.env之后再访问站点。
- 访问站点完成图形化安装。
- 对于V2版本在此结束,对于企业版本继续。
- 群晖任务系统中添加开机启动脚本。
cd /volume1/LskyProPlus/ && php80 artisan queue:work --queue=emails,images,thumbnails >> /dev/null 2>&1
- 群晖任务系统中添加周期性执行脚本,一分钟执行一次。
cd /volume1/LskyProPlus/ && php80 artisan schedule:run >> /dev/null 2>&1
