您的位置 首页 教程

宝塔面板环境安装 EduSoho 的配置范例

写在前面

推荐使用 CentOS 7.x 系统,以下操作均以 CentOS 7.x 为例。

  1. 挂载磁盘:
    1
    yum install wget -y && wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk.sh && bash auto_disk.sh
  2. 升级系统:
    1
    yum update -y
  3. 安装宝塔:
    1
    yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
  4. 登录宝塔搭建环境并创建站点,参见以下链接:http://docs.bt.cn。环境软件推荐 Nginx 1.15 或者 Apache 2.4 二选一,MySQL 5.7,PHP 7.2,phpMyAdmin 4.8(如果看不到 4.8,可以暂时选择 4.7,安装好了再换 4.8)。强烈建议选择编译安装,虽然比较慢,但更稳定。

正文

假设你已经创建了一个站点,同时创建了数据库,并且把 edusoho 文件夹里面的内容放到了站点根目录。在开始安装之前,你还需要做以下几件事:

  1. 请在“域名设置——网站目录”选择运行目录为 /web。若旧版面板无此选项,可以直接关闭“防跨站攻击”。
  2. 确保你的 PHP 版本不低于 5.4,打开了 PATH_INFO,安装了 fileinfo 和 Opache 扩展。

使用 LAMP 环境的同学,看到这里就可以直接安装了。


下面是 LNMP 环境下,EduSoho 的伪静态配置文件,使用 LNMP 的同学请继续往下看:

  1. 请在“域名设置——默认文档”第一行添加 app.php。记得点击添加按钮。
  2. 请在“域名设置——伪静态”粘贴以下规则,并作如下修改:
    • yourdomain.com 替换为你自己的域名。
    • php-cgi-xx.sock 中的 xx 用你实际安装的 PHP 版本号代替,不带小数点。
1
写在前面

笔者推荐使用 CentOS 7.x 系统,以下操作均以 CentOS 7.x 为例。

挂载磁盘:yum install wget -y && wget -O auto_disk.sh http://download.bt.cn/tools/auto_disk.sh && bash auto_disk.sh
升级系统:yum update -y
安装宝塔:yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh
登录宝塔搭建环境并创建站点,参见以下链接:http://docs.bt.cn。环境软件推荐 Nginx 1.15 或者 Apache 2.4 二选一,MySQL 5.7,PHP 7.2,phpMyAdmin 4.8(如果看不到 4.8,可以暂时选择 4.7,安装好了再换 4.8)。强烈建议选择编译安装,虽然比较慢,但更稳定。
正文

假设你已经创建了一个站点,同时创建了数据库,并且把 edusoho 文件夹里面的内容放到了站点根目录。在开始安装之前,你还需要做以下几件事:

请在“域名设置——网站目录”选择运行目录为 /web。若旧版面板无此选项,可以直接关闭“防跨站攻击”。
确保你的 PHP 版本不低于 5.4,打开了 PATH_INFO,安装了 fileinfo 和 Opache 扩展。
使用 LAMP 环境的同学,看到这里就可以直接安装了。

下面是 LNMP 环境下,EduSoho 的伪静态配置文件,使用 LNMP 的同学请继续往下看:

请在“域名设置——默认文档”第一行添加 app.php。记得点击添加按钮。
请在“域名设置——伪静态”粘贴以下规则,并作如下修改:

yourdomain.com 替换为你自己的域名。
php-cgi-xx.sock 中的 xx 用你实际安装的 PHP 版本号代替,不带小数点。
#EDUSOHO-START EDUSOHO重写规则
location / {
index app.php;
try_files $uri @rewriteapp;
}

location @rewriteapp {
rewrite ^(.*)$ /app.php/$1 last;
}

location ~ ^/udisk {
internal;
root /www/wwwroot/yourdomain.com/app/data/;
}

location ~ ^/(app|app_dev)\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_pass unix:/tmp/php-cgi-xx.sock;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param DOCUMENT_ROOT /www/wwwroot/yourdomain.com/web;
fastcgi_param SCRIPT_FILENAME /www/wwwroot/yourdomain.com/web$fastcgi_script_name;
include fastcgi_params;
fastcgi_param HTTP_X-Sendfile-Type X-Accel-Redirect;
fastcgi_param HTTP_X-Accel-Mapping /udisk=/www/wwwroot/yourdomain.com/app/data/udisk;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
fastcgi_buffer_size 128k;
fastcgi_buffers 8 128k;
}

location ~ ^/files/.*\.(php|php5)$ {
deny all;
}

location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.*)$;
fastcgi_pass unix:/tmp/php-cgi-xx.sock;
fastcgi_index index.php;
include fastcgi.conf;
fastcgi_param DOCUMENT_ROOT /www/wwwroot/yourdomain.com/web;
fastcgi_param SCRIPT_FILENAME /www/wwwroot/yourdomain.com/web$fastcgi_script_name;
include fastcgi_params;
}
#EDUSOHO-END

参考资料:
https://amh.sh/bbs/forum.php?mod=viewthread&tid=8195&page=1#45795

备注:
使用宝塔防火墙的用户注意,如果网校视频保存在优酷或腾讯视频,添加通用分享代码时请关闭宝塔防火墙,或将

1
^/media/course/

添加到防火墙 URL 白名单,否则,添加课时视频时会被防火墙拦截而无法保存。

关于作者: 秋硕

传播学习知识,记录学习经验,分享学习教程。

热门文章

Leave a Reply

Your email address will not be published. Required fields are marked *