Moodle: ошибка при установке
Я пытаюсь установить Moodle, и все выглядит нормально, но когда дело доходит до процесса создания пользователя Admin, кажется, что CSS-файла нет, а кнопка "обновить профиль" не выполняет никаких действий. Так что я застрял на странице moodle/user/editadvanced.php?id=2
Я также приложил скриншот сайта.
Я уже попробовал все возможные способы, такие как изменение разрешения на 777 или с правами пользователя root, пользователя Nginx и владельца этого каталога. Но он остается неизменным после каждой установки.
Я уже искал эту проблему, но не смог найти решение. Я следую руководству по HowToForge, чтобы установить Moodle.
Мое местоположение данных Moodle: /var/moodledata
Мой Moodle DIR: /var/www/career/moodle/
Мой конфигурационный файл Nginx:
server {
listen 80;
listen 443 ssl spdy;
server_name domain.com;
keepalive_timeout 70;
root /var/www/domain;
#ssl on;
gzip on;
ssl_certificate /etc/letsencrypt/live/domain.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/domain.com/privkey.pem; # managed by Certbot
ssl_protocols TLSv1.2;
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:ECDHE-RSA-AES128-GCM-SHA256:AES256+EECDH:DHE-RSA-AES128-GCM-SHA256:AES256+EDH:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES256-GCM-SHA384:AES128-GCM-SHA256:AES256-SHA256:AES128-SHA256:AES256-SHA:AES128-SHA:DES-CBC3-SHA:HIGH:!aNULL:!eNULL:!EXPORT:!DES:!MD5:!PSK:!RC4:!3DES;
ssl_dhparam /etc/nginx/conf.d/dhparam.pem;
ssl_prefer_server_ciphers on;
ssl_session_tickets off;
ssl_session_cache shared:SSL:10m;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; ";
add_header X-Frame-Options "DENY";
spdy_headers_comp 6;
spdy_keepalive_timeout 300;
access_log /var/log/nginx/career.access.log;
error_log /var/log/nginx/career.error.log;
location / {
root /var/www/career;
#try_files $uri $uri/ = /404.html;
if ($request_uri ~ ^/(.*)\.html$) { return 302 /$1; }
try_files $uri $uri/ $uri.html $uri.php?$args;
index index.php index.html;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains" always;
}
error_page 404 /404.html;
location = /404.html {
root /var/www/career;
internal;
}
error_page 405 /405.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /var/www/career;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~* \.php$ {
root /var/www/career;
#fastcgi_pass 127.0.0.1:9000;
fastcgi_pass php-fpm;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
#if ($request_uri ~ ^/([^?]*)\.php($|\?)) { return 302 /$1; }
try_files $uri = 404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_param QUERY_STRING $query_string;
fastcgi_param REQUEST_METHOD $request_method;
fastcgi_param CONTENT_TYPE $content_type;
fastcgi_param CONTENT_LENGTH $content_length;
fastcgi_intercept_errors on;
fastcgi_ignore_client_abort off;
fastcgi_connect_timeout 60;
fastcgi_send_timeout 180;
fastcgi_read_timeout 180;
fastcgi_buffers 256 16k;
fastcgi_buffer_size 32k;
fastcgi_temp_file_write_size 256k;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
Пробная версия Moodle: 3.5.1 и 3.2.9
Этапы создания базы данных:
CREATE DATABASE DATABASENAME DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON DATABASENAME.* TO 'DB_USER'@'localhost' IDENTIFIED BY 'PASSWORD';
Mysql версия: 5.5.56-MariaDB MariaDB Server
Я лично думаю, что у него проблемы с разрешениями, по какой-то причине Moodle не может получить доступ к файлам или установить их. Но хотя я дал ему разрешение 777 обоим moodledata
Дир и moodle
реж.
ОБНОВИТЬ
Я вижу, что некоторые файлы не загружены и отсутствуют, как показано на рисунке ниже.
1 ответ
Я заменил location .php
в файле nginx.conf и теперь он работает отлично. и теперь аргумент с косой чертой работает нормально.
новый location
:
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass php-fpm; (or 127.0.0.1:9000)
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}