产品服务AMH 免费服务器主机面板SSL证书 免费SSL证书申请 担保单 免费安全、零费率交易平台编程助手免费智能写代码、翻译AMYSQL 免费MySQL管理工具

AMH 社区首页

 AMH社区 - 开放自由有价值的社区

[求助帖] 阿里云主机,AMH面板条件下安装Edusoho环境

matthewmiao
铁牌会员
111.00 价值分

matthewmiao 发表于 2015-06-08 06:55:32
准备开贴写一些这个过程,论坛里面,网络上找不到完整的方案,对于我等小白,真是尝试了N种办法,都不得要领。


Edusoho是在线教育的平台,个人感觉还是比较好的。

先列以下edusoho对环境的要求:


之前的之前

[*]选择自己安装,放在服务器生产环境(也就是正规对外服务的),强烈建议用官方标准配置(Linux + Nginx + php-fpm + mysql)或者购买服务套餐。不专业的安装手法很可能导致系统出现严重漏洞--简单的把文件罗列出来,任意人都可以下载视频;
[*]跑PHP应用,Linux性能比windows系统快好几倍, 为了获得更好的体验,珍惜宝贵的生命,请使用Linux.
[*]EduSoho安装比一般的应用系统复杂,但同时安全系数也提升了若干倍,尤其是在视频保护方面;
[*]为什么要强调nginx、apache等的配置文件:由于EduSoho是单入口的web应用,所有的请求都从app.php文件进入,并且edusoho/web目录下存放的都是公开文件,比如头像文件、js文件、css文件等。其他文件则分别在app,src等非公开目录。所以为了您的安全我们强烈推荐您按照我们的教程配置nginx跟apache。


系统需求

[*]Linux推荐ubuntu12.04 server / ubuntu14.04 server ,Centos6.x
[*]PHP版本 >= 5.3.17
[*]MySQL版本 > 5.5x
[*]Nginx版本 >=1.0
[*]云服务器(云主机)、独立主机,是安装EduSoho的最佳选择


2015-06-08 06:55:32 1

matthewmiao
铁牌会员
111.00 价值分

群里许多用户问为什么EduSoho搞出那么多配置,为什么不把程序像某论坛程序一样,扔在目录下就能运作了呢?

主要的原因:EduSoho是视频应用,非文字和图片类应用

方便视频文件管理,视频文件和网站可以一个目录就备份走了
部分配置主要是为了保证服务器安全以及视频安全;
部分配置主要是为了成倍的提高服务器的处理性能和吞吐能力
例子一:配置中有个x-sendfile的配置,这个配置不是必须的。但是官方还是强烈建议配置。




X-Sendfile 是一种将文件下载请求由后端应用转交给前端 web 服务器处理的机制,它可以消除后端程序既要读文件又要处理发送的压力,从而显著提高服务器效率,特别是处理大文件下载的情形下。
如果没有X-Sendfile,系统所有视频数据是由php处理的,意味着任何一个用户访问视频,都需要PHP读取到内存再往web服务器发送,然后web服务器再往浏览器端推送,这样意味着系统的负载能力要极大的降低。性能差距非常大。

例子二,不再赘述,图片中已经有文字说明。




例子三,关闭上传目录的php执行权限,让web_shell就无法通过上传文件来实现控制网站,哪怕系统万一有上传漏洞,也会将攻击的脚本排除在执行代码之外。




高性能高安全的应用不仅仅要依赖好的程序,还要依赖好的配置。

好的配置可以成几倍、几十倍、几百倍的提升性能和安全性。

一键安装的应用虽然好用,但是同时带来许多新的问题。

总结,EduSoho官方推荐配置主要目的

1、最大程度的压榨主机处理能力,提高性能;

2、极大的增强了系统安全性;

学过了
  支持 (0分)  反对 (0分)
回复  2015-06-08 06:57:33 2

matthewmiao
铁牌会员
111.00 价值分

官方要求的几个自定义的配置如下:

1. PHP配置

网站管理 => PHP设置

使用内存量:
memory_limit =1024M

POST最大字节数 :
post_max_size =1024M

允许最大上传文件:
upload_max_filesize =1024M

程序最长运行时间:
max_execution_time = 90s


2. Nginx配置

站点列表=>文管 => Nginx(虚拟主机站点文件(nginx)) =>test.com.conf
server {
listen 80;

# [改] 网站的域名
server_name www.test.com test.com;

#301跳转
if ($host = 'test.com' )
{
rewrite ^/(.*)$ http://www.test.com/$1 permanent;
}

# 程序的安装路径
root /www/web/test/public_html/edusoho/web;

# 日志路径
access_log /www/wdlinux/nginx/logs/test.com.access.log;
error_log /www/wdlinux/nginx/logs/test.com.error.log;

location / {
index app.php;
try_files $uri @rewriteapp;
}

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

location ~ ^/udisk {
internal;
root /www/web/test/public_html/edusoho/app/data/;
}

location ~ ^/(app|app_dev)\.php(/|$) {
fastcgi_pass 127.0.0.1:9000;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS off;
fastcgi_param HTTP_X-Sendfile-Type X-Accel-Redirect;
fastcgi_param HTTP_X-Accel-Mapping /udisk=/www/web/test/public_html/edusoho/app/data/udisk;
fastcgi_buffer_size 128k;
fastcgi_buffers 8 128k;
}

# 配置设置图片格式文件
location ~* \.(jpg|jpeg|gif|png|ico|swf)$ {
# 过期时间为3年
expires 3y;

# 关闭日志记录
access_log off;

# 关闭gzip压缩,减少CPU消耗,因为图片的压缩率不高。
gzip off;
}

# 配置css/js文件
location ~* \.(css|js)$ {
access_log off;
expires 3y;
}

# 禁止用户上传目录下所有.php文件的访问,提高安全性
location ~ ^/files/.*\.(php|php5)$ {
deny all;
}

# 以下配置允许运行.php的程序,方便于其他第三方系统的集成。
location ~ \.php$ {
# [改] 请根据实际php-fpm运行的方式修改
fastcgi_pass 127.0.0.1:9000;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param HTTPS off;
}
}
  支持 (0分)  反对 (0分)
回复  2015-06-08 06:59:42 3

拓跋思南
铁牌会员
46.00 价值分

楼主成功了么,求配置文件。我怎么弄都弄不成,主要是弄成了之后过一段时间就会除了主页全部404
  支持 (0分)  反对 (0分)
回复  2015-11-18 16:22:19 4

dianshang8
铜牌会员
531.29 价值分

同求EduSoho在AMH面板下的完整、无误伪静态Rewrite方案。

AMH的官方大佬们,都来帮个忙啊!
  支持 (0分)  反对 (0分)
回复  2015-11-30 00:45:18 5
 1  (总1页)
AMH社区列表
用户服务中心