我正在尝试在我的localhost上安装moodle,但是当我到达安装系统页面时它没有显示任何内容,当我打开浏览器的控制台时我读到了这个
VM457 index.php?cache = 0& agreelicense = 1& confirmrelease = 1& lang = en:1 GET http://localhost/moodle/admin/index.php?cache=0&agreelicense=1&confirmrelease=1&lang=en net :: ERR_INCOMPLETE_CHUNKED_ENCODING
在我重新加载页面后,我得到moodle配置页面,但没有任何样式和大量的404请求,我不知道为什么,因为安装的第一步就像数据库配置它完美显示
我无法做任何事情......
我正在使用lemp和php 7.1我配置php.ini文件显示错误,但它没有显示任何东西,我克隆git存储库的moodle并将brach更改为3.2稳定,如果有人知道如何传递给这个错误我会非常感激。
答案 0 :(得分:0)
我最近遇到了类似的问题,这个(ERR_INCOMPLETE_CHUNKED_ENCODING)可能是因为gzip压缩可能没有启用或配置正确。该错误与编码有关。我在这里回答了非常类似的问题。
找到你的php.ini文件,转到php.ini文件
sudo vi /etc/php/5.6/apache2/php.ini
在2行以下添加或设置
zlib.output_compression = on
zlib.output_compression_level = 6
重启apache
sudo service apache2 restart
它将开始正常工作。
答案 1 :(得分:0)
我终于让它工作了,我在虚拟机上测试它:
nginx版本:nginx / 1.10.0 PHP 7.1.6 mysql Ver 14.14 Distrib 5.7.18
对于nginx默认文件,我添加:
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
location /dataroot/ {
internal;
alias /var/www/moodledata/; # ensure the path ends with /
}
到moodle的config.php文件中我添加了这个:
$CFG->xsendfile = 'X-Accel-Redirect';
$CFG->xsendfilealiases = array(
'/dataroot/' => $CFG->dataroot
);
这是我的默认nginx文件的样子:
服务器阻止:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.php index.html index.htm index.nginx-debian.html;
server_name _;
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.1-fpm.sock;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
}
location /dataroot/ {
internal;
alias /var/www/moodledata/; # ensure the path ends with /
}
try_files $uri $uri/ /index.php?args;
}
这是moodle config.php文件:
<?php
unset($CFG); // Ignore this line
global $CFG; // This is necessary here for PHPUnit execution
$CFG = new stdClass();
$CFG->dbtype = 'mysqli';
$CFG->dblibrary = 'native';
$CFG->dbhost = 'localhost';
$CFG->dbname = 'moodle';
$CFG->dbuser = 'dbusername';
$CFG->dbpass = 'dbpassword';
$CFG->prefix = 'mdl_';
$CFG->dboptions = array(
'dbpersist' => 0,
'dbsocket' => '',
'dbport' => 3306,
'dbhandlesoptions' => false,
'dbcollation' => 'utf8mb4_general_ci',
);
$CFG->wwwroot = 'http://localhost/moodle';
$CFG->dataroot = '/var/www/moodledata';
$CFG->directorypermissions = 0777;
$CFG->admin = 'admin';
$CFG->xsendfile = 'X-Accel-Redirect';
$CFG->xsendfilealiases = array(
'/dataroot/' => $CFG->dataroot
);
require_once(__DIR__ . '/lib/setup.php'); // Do not edit
我没有修改php.ini文件。或者是www.conf of php。
这是我获得信息的页面:
配置nginx和moodles config.php文件: https://docs.moodle.org/33/en/Nginx#XSendfile_aka_X-Accel-Redirect
安装PHP时,我建议安装这些模块:
sudo apt-get install php7.1-fpm php7.1-mysql php7.1-common php7.1-cgi php7.1-curl php7.1-cli php7.1-dev php7.1-gd php7.1-gmp php7.1-xml php7.1-xmlrpc php7.1-zip php7.1-xls php7.1-opcache php7.1-mbstring php7.1-soap php7.1-intl graphviz aspell php7.1-pspell php7.1-ldap