DSM6: настройка постоянных ссылок Nginx для Wordpress (избегайте 404)
С обновлением Synology DSM6 мы теперь должны использовать Nginx вместо Apache. По умолчанию конфигурация Nginx не допускает постоянных ссылок WordPress (генерировать 404).
Я прочитал, что идея была в том, чтобы преобразовать /uri в /? P =$uri и поместить эту конфигурацию в раздел "location" конфигурации сервера nginx.
Где именно разместить эту конфигурацию в DSM6?
2 ответа
Вы пробовали пользовательский конфиг? Просто скопируйте свою работу:
/etc/nginx/app.d/server.webstation-vhost.conf
чтобы:
/usr/local/etc/nginx/sites-enabled/httpd-vhost.conf-user
и переименовать server.webstation-vhost.conf
в server.webstation-vhost.conf.old
или что-то и перезапустите nginx (nginx -s reload
)
Или еще лучше, удалите ваш виртуальный хост (ы) с веб-станции. Единственное, что вам нужно вручную обновить сертификаты SSL, когда они истекают, вместо использования веб-интерфейса.
На самом деле, вы можете легко добавлять пользовательские директивы, не изменяя поведение DSM.
Посмотрите на содержание /usr/local/etc/nginx/sites-enabled/httpd-vhost.conf-user
, чтобы увидеть, где должна храниться пользовательская конфигурация:
server {
[...]
server_name NAME
[...]
include /usr/local/etc/nginx/conf.d/778943ad-0dc4-40ae-bb7f-7b2285e3203b/user.conf*;
}
Затем вам просто нужно создать файл /usr/local/etc/nginx/conf.d/778943ad-0dc4-40ae-bb7f-7b2285e3203b/user.conf.wordpress-permalink
со следующим содержанием:
location /{
try_files $uri $uri/ /index.php?$args;
}
и перезапустите nginx:
synoservicecfg --restart nginx
Это не нарушит будущее обновление DSM (так как это поддерживаемая настройка)