Я использую веб-сервер nginx на CentOS 7. Я использую две версии php php 7.2 на порту 9000 (для Moodle 3.6) и php 5.6 на 9001 (для Moodle 2.7).
Для Moodle 2.6 существует один домен (lms.example.com), и в этом домене работает несколько сайтов Moodle 2.7 (например, lms.example.com/undergraduate, lms.example.com/postgraduate и т. Д.).
Moodle 3.6 работает без проблем. Но сайты Moodle 2.7 не отображаются должным образом. Он не показывает никаких изображений на веб-сайтах. Только текст отображается.
Я попытался настроить один файл .conf для каждой подпапки. но не сработало. закончилось так же.
default.conf выглядит следующим образом;
map $request_uri $rot {
default /var/www/html/lms/;
"^~undergraduate" /var/www/html/lms/undergraduate/;
"^~postgraduate" /var/www/html/lms/postgraduate/;
}
server {
listen 80 default_server;
server_name lms.example.com;
root $rot;
index index.html index.php;
location / {
try_files $uri $uri/ index.php =404;
}
location /dataroot/ {
internal;
alias /var/www/html/lms-data/$rot-data;
}
location ~* \.php$ {
fastcgi_pass 127.0.0.1:9001;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
журнал показывает,
2019/06/17 20:46:28 [ошибка] 9134 # 9134: * 41 FastCGI отправил в stderr: «Сообщение PHP: Примечание PHP: неопределенная переменная: данные в / path / to / moodle / website / cache / stores / file /lib.php в строке 370 "при чтении заголовка ответа из апстрима, клиент: xxx.xxx.xxx.xxx, сервер: lms.xxx.xxx, запрос:" GET / xxx / HTTP / 1.1 ", апстрим:" fastcgi: //127.0.0.1:9001 ", хост:" xxx.xxx.xxx "