您好我正在寻找有关如何使用nginx作为服务器配置Moodle 2.0服务器的教程,以及使用mySQL作为后端的PHP-FPM或FastCGI。对不起,如果我混淆服务器架构菜鸟的这些术语。可能会在Ubuntu / Debian机器上运行它
找到了旧版Moodle的教程,其中包含从源代码编译的旧版PHP和PostgreSQL。这会减慢我的部署计划,似乎已被弃用。根据我对MySQL的经验水平,我更喜欢MySQL而不是Postgres。
那里的任何人都可以提出一些更新的建议吗?
答案 0 :(得分:3)
我为Nginx和Moodle 2撰写了一份文档:http://docs.moodle.org/dev/Install_Moodle_On_Ubuntu_with_Nginx/PHP-fpm
不要忘记在Moodle中将斜杠参数设置为off,否则你将在html编辑器中遇到图像链接问题。
答案 1 :(得分:2)
首先,您需要在nginx上运行php-fpm ... http://www.bytetouch.com/blog/linux/how-to-nginx-with-php-fpm-fastcgi-implementation-on-debian-lenny/
为了更好的性能我使用unix套接字来连接tcp套接字,这里出现unix套接字的配置。 http://andreas-lehr.com/blog/archives/491-nginx-wordpress-php-fpm-on-debian-squeeze.html
我在nginx中使用以下conf for php
location ~ \.php($|/) { if ($uri ~ "^(.+\.php)(/.*)") { set $script $1; set $path_info $2; } fastcgi_pass unix:/var/run/php-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$script; fastcgi_param SCRIPT_NAME $script; include /etc/nginx/fastcgi_params; }
你需要更换unix套接字,我不知道debian发行版是否有fastcgi_params包含文件,但无论如何都要手动编写教程
之后,你在nginx服务器上运行php,然后你可以使用moodle和所有你喜欢的php脚本或应用程序。
如果您有疑问,请评论=)。
答案 2 :(得分:1)
我建议您保持斜杠参数 启用,特别是如果您已经上传资源(即SCORM)并将其放入nginx的服务器{}部分虚拟主机
rewrite ^(.*\.php)(/)(.*)$ $1?file=/$3 last;