ISPConfig 3.3.1p1 — NGINX — Debian 13 Stable Hello, I'm encountering an issue whereby I'm unable to change the "Web server config" Directive Snippet from the API If I do it manually in the Control Panel, then ('directive_snippets_id' => '0') changes to ('directive_snippets_id' => '1') when I query the API. When I try to set it using the API I get the following: ==================== REQUEST: sites_web_domain_update ==================== URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_update Payload: { "session_id": "REDACTED", "client_id": 1, "primary_id": 1, "params": { "directive_snippets_id": 1 } } ==================== DECODED RESPONSE: sites_web_domain_update ==================== array ( 'code' => 'ok', 'message' => '', 'response' => 0, ) It does not change, I tested with all Functions permissions enabled for the API/Remote user. Any ideas? Thanks!
Try to set all parameters. The update functions in the API always require you to send all parameters and not just one that you want to change. Get the full record using the get function, change the parameter, and pass the full record back.
Those were just the relevant snippets, here's the full transaction for your review (I had to trim it up a bit, because I kept getting the "Please enter a message with no more than 20000 characters." forum error when I posted the full thing). Please see second post after this one for the missing part. Code: ============================================================ SCRIPT START ============================================================ Target client_id: 1 Target domain_id: 1 Target directive_snippets_id: 1 ============================================================ REQUEST: login ============================================================ URL: https://127.0.0.1:8000/remote/json.php?login PAYLOAD SENT: {"username":"**REDACTED**","password":"**REDACTED**"} ============================================================ RESPONSE: login ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Fri, 29 May 2026 17:03:24 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":"**REDACTED**"} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => '**REDACTED**', ) ============================================================ REQUEST: sites_web_domain_get ============================================================ URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_get PAYLOAD SENT: {"session_id":"**REDACTED**","primary_id":1} ============================================================ RESPONSE: sites_web_domain_get ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Fri, 29 May 2026 17:03:24 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"\/var\/www\/clients\/client1\/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"1","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http:\/\/example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"##subroot public ##\r\n\r\nlocation \/ {\r\n try_files $uri $uri\/ \/index.php?$query_string;\r\n}","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"\/var\/www\/clients\/client1\/web1\/web:\/var\/www\/clients\/client1\/web1\/private:\/var\/www\/clients\/client1\/web1\/tmp:\/var\/www\/vvveb.test\/web:\/srv\/www\/vvveb.test\/web:\/usr\/share\/php5:\/usr\/share\/php:\/tmp:\/usr\/share\/phpmyadmin:\/etc\/phpmyadmin:\/var\/lib\/phpmyadmin:\/dev\/random:\/dev\/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https:\/\/example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"0","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-05-29","last_jailkit_hash":null,"disable_symlinknotowner":"n"}} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => array ( 'domain_id' => '1', 'sys_userid' => '2', 'sys_groupid' => '2', 'sys_perm_user' => 'riud', 'sys_perm_group' => 'ru', 'sys_perm_other' => '', 'server_id' => '1', 'ip_address' => '*', 'ipv6_address' => '', 'domain' => 'vvveb.test', 'type' => 'vhost', 'parent_domain_id' => '0', 'vhost_type' => 'name', 'document_root' => '/var/www/clients/client1/web1', 'web_folder' => '', 'system_user' => 'web1', 'system_group' => 'client1', 'hd_quota' => '-1', 'traffic_quota' => '-1', 'cgi' => 'n', 'ssi' => 'n', 'suexec' => 'y', 'errordocs' => '1', 'is_subdomainwww' => '1', 'subdomain' => 'www', 'php' => 'php-fpm', 'ruby' => 'n', 'python' => 'n', 'perl' => 'n', 'redirect_type' => 'redirect', 'redirect_path' => 'http://example.com', 'seo_redirect' => '', 'rewrite_to_https' => 'n', 'ssl' => 'n', 'ssl_letsencrypt' => 'n', 'ssl_letsencrypt_exclude' => 'n', 'ssl_state' => '', 'ssl_locality' => '', 'ssl_organisation' => '', 'ssl_organisation_unit' => '', 'ssl_country' => 'AF', 'ssl_domain' => 'vvveb.test', 'ssl_request' => '', 'ssl_cert' => '', 'ssl_bundle' => '', 'ssl_key' => '', 'ssl_action' => '', 'stats_password' => NULL, 'stats_type' => 'awstats', 'allow_override' => 'All', 'apache_directives' => '', 'nginx_directives' => '##subroot public ## location / { try_files $uri $uri/ /index.php?$query_string; }', 'php_fpm_use_socket' => 'y', 'php_fpm_chroot' => 'n', 'pm' => 'ondemand', 'pm_max_children' => '10', 'pm_start_servers' => '2', 'pm_min_spare_servers' => '1', 'pm_max_spare_servers' => '5', 'pm_process_idle_timeout' => '10', 'pm_max_requests' => '0', 'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom', 'custom_php_ini' => '', 'backup_interval' => 'none', 'backup_copies' => '1', 'backup_format_web' => 'default', 'backup_format_db' => 'gzip', 'backup_encrypt' => 'n', 'backup_password' => '', 'backup_excludes' => '', 'active' => 'y', 'traffic_quota_lock' => 'n', 'proxy_directives' => '', 'last_quota_notification' => NULL, 'rewrite_rules' => 'return 302 https://example.com;', 'added_date' => '2026-05-21', 'added_by' => '**REDACTED**', 'directive_snippets_id' => '0', 'enable_pagespeed' => 'n', 'http_port' => '80', 'https_port' => '443', 'folder_directive_snippets' => NULL, 'log_retention' => '30', 'proxy_protocol' => 'n', 'server_php_id' => '12', 'jailkit_chroot_app_sections' => '', 'jailkit_chroot_app_programs' => '', 'delete_unused_jailkit' => 'n', 'last_jailkit_update' => '2026-05-29', 'last_jailkit_hash' => NULL, 'disable_symlinknotowner' => 'n', ), ) ============================================================ REQUEST: sites_web_domain_update ============================================================ URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_update PAYLOAD SENT: {"session_id":"**REDACTED**","client_id":1,"primary_id":1,"params":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"/var/www/clients/client1/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"1","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http://example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"##subroot public ##\r\n\r\nlocation / {\r\n try_files $uri $uri/ /index.php?$query_string;\r\n}","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https://example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":1,"enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-05-29","last_jailkit_hash":null,"disable_symlinknotowner":"n"}} ============================================================ RESPONSE: sites_web_domain_update ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Fri, 29 May 2026 17:03:24 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":0} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => 0, ) ============================================================ REQUEST: sites_web_domain_get ============================================================ URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_get PAYLOAD SENT: {"session_id":"**REDACTED**","primary_id":1} ============================================================ RESPONSE: sites_web_domain_get ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Fri, 29 May 2026 17:03:24 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"\/var\/www\/clients\/client1\/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"1","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http:\/\/example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"##subroot public ##\r\n\r\nlocation \/ {\r\n try_files $uri $uri\/ \/index.php?$query_string;\r\n}","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"\/var\/www\/clients\/client1\/web1\/web:\/var\/www\/clients\/client1\/web1\/private:\/var\/www\/clients\/client1\/web1\/tmp:\/var\/www\/vvveb.test\/web:\/srv\/www\/vvveb.test\/web:\/usr\/share\/php5:\/usr\/share\/php:\/tmp:\/usr\/share\/phpmyadmin:\/etc\/phpmyadmin:\/var\/lib\/phpmyadmin:\/dev\/random:\/dev\/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https:\/\/example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"0","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-05-29","last_jailkit_hash":null,"disable_symlinknotowner":"n"}} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => array ( 'domain_id' => '1', 'sys_userid' => '2', 'sys_groupid' => '2', 'sys_perm_user' => 'riud', 'sys_perm_group' => 'ru', 'sys_perm_other' => '', 'server_id' => '1', 'ip_address' => '*', 'ipv6_address' => '', 'domain' => 'vvveb.test', 'type' => 'vhost', 'parent_domain_id' => '0', 'vhost_type' => 'name', 'document_root' => '/var/www/clients/client1/web1', 'web_folder' => '', 'system_user' => 'web1', 'system_group' => 'client1', 'hd_quota' => '-1', 'traffic_quota' => '-1', 'cgi' => 'n', 'ssi' => 'n', 'suexec' => 'y', 'errordocs' => '1', 'is_subdomainwww' => '1', 'subdomain' => 'www', 'php' => 'php-fpm', 'ruby' => 'n', 'python' => 'n', 'perl' => 'n', 'redirect_type' => 'redirect', 'redirect_path' => 'http://example.com', 'seo_redirect' => '', 'rewrite_to_https' => 'n', 'ssl' => 'n', 'ssl_letsencrypt' => 'n', 'ssl_letsencrypt_exclude' => 'n', 'ssl_state' => '', 'ssl_locality' => '', 'ssl_organisation' => '', 'ssl_organisation_unit' => '', 'ssl_country' => 'AF', 'ssl_domain' => 'vvveb.test', 'ssl_request' => '', 'ssl_cert' => '', 'ssl_bundle' => '', 'ssl_key' => '', 'ssl_action' => '', 'stats_password' => NULL, 'stats_type' => 'awstats', 'allow_override' => 'All', 'apache_directives' => '', 'nginx_directives' => '##subroot public ## location / { try_files $uri $uri/ /index.php?$query_string; }', 'php_fpm_use_socket' => 'y', 'php_fpm_chroot' => 'n', 'pm' => 'ondemand', 'pm_max_children' => '10', 'pm_start_servers' => '2', 'pm_min_spare_servers' => '1', 'pm_max_spare_servers' => '5', 'pm_process_idle_timeout' => '10', 'pm_max_requests' => '0', 'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom', 'custom_php_ini' => '', 'backup_interval' => 'none', 'backup_copies' => '1', 'backup_format_web' => 'default', 'backup_format_db' => 'gzip', 'backup_encrypt' => 'n', 'backup_password' => '', 'backup_excludes' => '', 'active' => 'y', 'traffic_quota_lock' => 'n', 'proxy_directives' => '', 'last_quota_notification' => NULL, 'rewrite_rules' => 'return 302 https://example.com;', 'added_date' => '2026-05-21', 'added_by' => '**REDACTED**', 'directive_snippets_id' => '0', 'enable_pagespeed' => 'n', 'http_port' => '80', 'https_port' => '443', 'folder_directive_snippets' => NULL, 'log_retention' => '30', 'proxy_protocol' => 'n', 'server_php_id' => '12', 'jailkit_chroot_app_sections' => '', 'jailkit_chroot_app_programs' => '', 'delete_unused_jailkit' => 'n', 'last_jailkit_update' => '2026-05-29', 'last_jailkit_hash' => NULL, 'disable_symlinknotowner' => 'n', ), ) ============================================================ REQUEST: logout ============================================================ URL: https://127.0.0.1:8000/remote/json.php?logout PAYLOAD SENT: {"session_id":"**REDACTED**"} ============================================================ RESPONSE: logout ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Fri, 29 May 2026 17:03:24 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":true} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => true, ) ============================================================ FINAL SUMMARY ============================================================ domain_id: 1 client_id: 1 old directive_snippets_id: '0' requested directive_snippets_id: 1 after directive_snippets_id: '0' update response: 0 Besides ISPConfig 3.3.1p1, I also tested on a separate install of 3.1.15p3 that did not have any Nginx Directives set, and got the same results.
Here's the part that was omitted due to the Forum character limitations: Code: ============================================================ FULL RECORD BEING SENT BACK TO sites_web_domain_update ============================================================ array ( 'domain_id' => '1', 'sys_userid' => '2', 'sys_groupid' => '2', 'sys_perm_user' => 'riud', 'sys_perm_group' => 'ru', 'sys_perm_other' => '', 'server_id' => '1', 'ip_address' => '*', 'ipv6_address' => '', 'domain' => 'vvveb.test', 'type' => 'vhost', 'parent_domain_id' => '0', 'vhost_type' => 'name', 'document_root' => '/var/www/clients/client1/web1', 'web_folder' => '', 'system_user' => 'web1', 'system_group' => 'client1', 'hd_quota' => '-1', 'traffic_quota' => '-1', 'cgi' => 'n', 'ssi' => 'n', 'suexec' => 'y', 'errordocs' => '1', 'is_subdomainwww' => '1', 'subdomain' => 'www', 'php' => 'php-fpm', 'ruby' => 'n', 'python' => 'n', 'perl' => 'n', 'redirect_type' => 'redirect', 'redirect_path' => 'http://example.com', 'seo_redirect' => '', 'rewrite_to_https' => 'n', 'ssl' => 'n', 'ssl_letsencrypt' => 'n', 'ssl_letsencrypt_exclude' => 'n', 'ssl_state' => '', 'ssl_locality' => '', 'ssl_organisation' => '', 'ssl_organisation_unit' => '', 'ssl_country' => 'AF', 'ssl_domain' => 'vvveb.test', 'ssl_request' => '', 'ssl_cert' => '', 'ssl_bundle' => '', 'ssl_key' => '', 'ssl_action' => '', 'stats_password' => NULL, 'stats_type' => 'awstats', 'allow_override' => 'All', 'apache_directives' => '', 'nginx_directives' => '##subroot public ## location / { try_files $uri $uri/ /index.php?$query_string; }', 'php_fpm_use_socket' => 'y', 'php_fpm_chroot' => 'n', 'pm' => 'ondemand', 'pm_max_children' => '10', 'pm_start_servers' => '2', 'pm_min_spare_servers' => '1', 'pm_max_spare_servers' => '5', 'pm_process_idle_timeout' => '10', 'pm_max_requests' => '0', 'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom', 'custom_php_ini' => '', 'backup_interval' => 'none', 'backup_copies' => '1', 'backup_format_web' => 'default', 'backup_format_db' => 'gzip', 'backup_encrypt' => 'n', 'backup_password' => '', 'backup_excludes' => '', 'active' => 'y', 'traffic_quota_lock' => 'n', 'proxy_directives' => '', 'last_quota_notification' => NULL, 'rewrite_rules' => 'return 302 https://example.com;', 'added_date' => '2026-05-21', 'added_by' => '**REDACTED**', 'directive_snippets_id' => 1, 'enable_pagespeed' => 'n', 'http_port' => '80', 'https_port' => '443', 'folder_directive_snippets' => NULL, 'log_retention' => '30', 'proxy_protocol' => 'n', 'server_php_id' => '12', 'jailkit_chroot_app_sections' => '', 'jailkit_chroot_app_programs' => '', 'delete_unused_jailkit' => 'n', 'last_jailkit_update' => '2026-05-29', 'last_jailkit_hash' => NULL, 'disable_symlinknotowner' => 'n', )
I can see that you have nginx_directives set. You can either use snippets or nginx_directives, but not both together. This is not about the API; you can also not use nginx_directives and snippets together in the GUI. Instead, add the custom Nginx directives that you want to set in nginx_directives field. Or create a snippet that contains all and leave nginx_directives empty.
I removed the NGINX Directive, and tried again. Still did not update. Please see below (I omitted the raw response from "sites_web_domain_get" that was issued after the update to stay within the 20K forum character limit) Code: ============================================================ SCRIPT START ============================================================ Target client_id: 1 Target domain_id: 1 Target directive_snippets_id: 1 ============================================================ REQUEST: login ============================================================ URL: https://127.0.0.1:8000/remote/json.php?login PAYLOAD SENT: {"username":"**REDACTED**","password":"**REDACTED**"} ============================================================ RESPONSE: login ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Sat, 06 Jun 2026 06:30:20 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":"**REDACTED**"} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => '**REDACTED**', ) ============================================================ REQUEST: sites_web_domain_get ============================================================ URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_get PAYLOAD SENT: {"session_id":"**REDACTED**","primary_id":1} ============================================================ RESPONSE: sites_web_domain_get ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Sat, 06 Jun 2026 06:30:20 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"\/var\/www\/clients\/client1\/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"0","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http:\/\/example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"\/var\/www\/clients\/client1\/web1\/web:\/var\/www\/clients\/client1\/web1\/private:\/var\/www\/clients\/client1\/web1\/tmp:\/var\/www\/vvveb.test\/web:\/srv\/www\/vvveb.test\/web:\/usr\/share\/php5:\/usr\/share\/php:\/tmp:\/usr\/share\/phpmyadmin:\/etc\/phpmyadmin:\/var\/lib\/phpmyadmin:\/dev\/random:\/dev\/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https:\/\/example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"0","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-06-05","last_jailkit_hash":"force_update1780629302","disable_symlinknotowner":"n"}} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => array ( 'domain_id' => '1', 'sys_userid' => '2', 'sys_groupid' => '2', 'sys_perm_user' => 'riud', 'sys_perm_group' => 'ru', 'sys_perm_other' => '', 'server_id' => '1', 'ip_address' => '*', 'ipv6_address' => '', 'domain' => 'vvveb.test', 'type' => 'vhost', 'parent_domain_id' => '0', 'vhost_type' => 'name', 'document_root' => '/var/www/clients/client1/web1', 'web_folder' => '', 'system_user' => 'web1', 'system_group' => 'client1', 'hd_quota' => '-1', 'traffic_quota' => '-1', 'cgi' => 'n', 'ssi' => 'n', 'suexec' => 'y', 'errordocs' => '0', 'is_subdomainwww' => '1', 'subdomain' => 'www', 'php' => 'php-fpm', 'ruby' => 'n', 'python' => 'n', 'perl' => 'n', 'redirect_type' => 'redirect', 'redirect_path' => 'http://example.com', 'seo_redirect' => '', 'rewrite_to_https' => 'n', 'ssl' => 'n', 'ssl_letsencrypt' => 'n', 'ssl_letsencrypt_exclude' => 'n', 'ssl_state' => '', 'ssl_locality' => '', 'ssl_organisation' => '', 'ssl_organisation_unit' => '', 'ssl_country' => 'AF', 'ssl_domain' => 'vvveb.test', 'ssl_request' => '', 'ssl_cert' => '', 'ssl_bundle' => '', 'ssl_key' => '', 'ssl_action' => '', 'stats_password' => NULL, 'stats_type' => 'awstats', 'allow_override' => 'All', 'apache_directives' => '', 'nginx_directives' => '', 'php_fpm_use_socket' => 'y', 'php_fpm_chroot' => 'n', 'pm' => 'ondemand', 'pm_max_children' => '10', 'pm_start_servers' => '2', 'pm_min_spare_servers' => '1', 'pm_max_spare_servers' => '5', 'pm_process_idle_timeout' => '10', 'pm_max_requests' => '0', 'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom', 'custom_php_ini' => '', 'backup_interval' => 'none', 'backup_copies' => '1', 'backup_format_web' => 'default', 'backup_format_db' => 'gzip', 'backup_encrypt' => 'n', 'backup_password' => '', 'backup_excludes' => '', 'active' => 'y', 'traffic_quota_lock' => 'n', 'proxy_directives' => '', 'last_quota_notification' => NULL, 'rewrite_rules' => 'return 302 https://example.com;', 'added_date' => '2026-05-21', 'added_by' => '**REDACTED**', 'directive_snippets_id' => '0', 'enable_pagespeed' => 'n', 'http_port' => '80', 'https_port' => '443', 'folder_directive_snippets' => NULL, 'log_retention' => '30', 'proxy_protocol' => 'n', 'server_php_id' => '12', 'jailkit_chroot_app_sections' => '', 'jailkit_chroot_app_programs' => '', 'delete_unused_jailkit' => 'n', 'last_jailkit_update' => '2026-06-05', 'last_jailkit_hash' => 'force_update1780629302', 'disable_symlinknotowner' => 'n', ), ) ============================================================ FULL RECORD BEING SENT BACK TO sites_web_domain_update ============================================================ array ( 'domain_id' => '1', 'sys_userid' => '2', 'sys_groupid' => '2', 'sys_perm_user' => 'riud', 'sys_perm_group' => 'ru', 'sys_perm_other' => '', 'server_id' => '1', 'ip_address' => '*', 'ipv6_address' => '', 'domain' => 'vvveb.test', 'type' => 'vhost', 'parent_domain_id' => '0', 'vhost_type' => 'name', 'document_root' => '/var/www/clients/client1/web1', 'web_folder' => '', 'system_user' => 'web1', 'system_group' => 'client1', 'hd_quota' => '-1', 'traffic_quota' => '-1', 'cgi' => 'n', 'ssi' => 'n', 'suexec' => 'y', 'errordocs' => '0', 'is_subdomainwww' => '1', 'subdomain' => 'www', 'php' => 'php-fpm', 'ruby' => 'n', 'python' => 'n', 'perl' => 'n', 'redirect_type' => 'redirect', 'redirect_path' => 'http://example.com', 'seo_redirect' => '', 'rewrite_to_https' => 'n', 'ssl' => 'n', 'ssl_letsencrypt' => 'n', 'ssl_letsencrypt_exclude' => 'n', 'ssl_state' => '', 'ssl_locality' => '', 'ssl_organisation' => '', 'ssl_organisation_unit' => '', 'ssl_country' => 'AF', 'ssl_domain' => 'vvveb.test', 'ssl_request' => '', 'ssl_cert' => '', 'ssl_bundle' => '', 'ssl_key' => '', 'ssl_action' => '', 'stats_password' => NULL, 'stats_type' => 'awstats', 'allow_override' => 'All', 'apache_directives' => '', 'nginx_directives' => '', 'php_fpm_use_socket' => 'y', 'php_fpm_chroot' => 'n', 'pm' => 'ondemand', 'pm_max_children' => '10', 'pm_start_servers' => '2', 'pm_min_spare_servers' => '1', 'pm_max_spare_servers' => '5', 'pm_process_idle_timeout' => '10', 'pm_max_requests' => '0', 'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom', 'custom_php_ini' => '', 'backup_interval' => 'none', 'backup_copies' => '1', 'backup_format_web' => 'default', 'backup_format_db' => 'gzip', 'backup_encrypt' => 'n', 'backup_password' => '', 'backup_excludes' => '', 'active' => 'y', 'traffic_quota_lock' => 'n', 'proxy_directives' => '', 'last_quota_notification' => NULL, 'rewrite_rules' => 'return 302 https://example.com;', 'added_date' => '2026-05-21', 'added_by' => '**REDACTED**', 'directive_snippets_id' => '1', 'enable_pagespeed' => 'n', 'http_port' => '80', 'https_port' => '443', 'folder_directive_snippets' => NULL, 'log_retention' => '30', 'proxy_protocol' => 'n', 'server_php_id' => '12', 'jailkit_chroot_app_sections' => '', 'jailkit_chroot_app_programs' => '', 'delete_unused_jailkit' => 'n', 'last_jailkit_update' => '2026-06-05', 'last_jailkit_hash' => 'force_update1780629302', 'disable_symlinknotowner' => 'n', ) ============================================================ REQUEST: sites_web_domain_update ============================================================ URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_update PAYLOAD SENT: {"session_id":"**REDACTED**","client_id":1,"primary_id":1,"params":{"domain_id":"1","sys_userid":"2","sys_groupid":"2","sys_perm_user":"riud","sys_perm_group":"ru","sys_perm_other":"","server_id":"1","ip_address":"*","ipv6_address":"","domain":"vvveb.test","type":"vhost","parent_domain_id":"0","vhost_type":"name","document_root":"/var/www/clients/client1/web1","web_folder":"","system_user":"web1","system_group":"client1","hd_quota":"-1","traffic_quota":"-1","cgi":"n","ssi":"n","suexec":"y","errordocs":"0","is_subdomainwww":"1","subdomain":"www","php":"php-fpm","ruby":"n","python":"n","perl":"n","redirect_type":"redirect","redirect_path":"http://example.com","seo_redirect":"","rewrite_to_https":"n","ssl":"n","ssl_letsencrypt":"n","ssl_letsencrypt_exclude":"n","ssl_state":"","ssl_locality":"","ssl_organisation":"","ssl_organisation_unit":"","ssl_country":"AF","ssl_domain":"vvveb.test","ssl_request":"","ssl_cert":"","ssl_bundle":"","ssl_key":"","ssl_action":"","stats_password":null,"stats_type":"awstats","allow_override":"All","apache_directives":"","nginx_directives":"","php_fpm_use_socket":"y","php_fpm_chroot":"n","pm":"ondemand","pm_max_children":"10","pm_start_servers":"2","pm_min_spare_servers":"1","pm_max_spare_servers":"5","pm_process_idle_timeout":"10","pm_max_requests":"0","php_open_basedir":"/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom","custom_php_ini":"","backup_interval":"none","backup_copies":"1","backup_format_web":"default","backup_format_db":"gzip","backup_encrypt":"n","backup_password":"","backup_excludes":"","active":"y","traffic_quota_lock":"n","proxy_directives":"","last_quota_notification":null,"rewrite_rules":"return 302 https://example.com;","added_date":"2026-05-21","added_by":"**REDACTED**","directive_snippets_id":"1","enable_pagespeed":"n","http_port":"80","https_port":"443","folder_directive_snippets":null,"log_retention":"30","proxy_protocol":"n","server_php_id":"12","jailkit_chroot_app_sections":"","jailkit_chroot_app_programs":"","delete_unused_jailkit":"n","last_jailkit_update":"2026-06-05","last_jailkit_hash":"force_update1780629302","disable_symlinknotowner":"n"}} ============================================================ RESPONSE: sites_web_domain_update ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Sat, 06 Jun 2026 06:30:20 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":0} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => 0, ) ============================================================ REQUEST: sites_web_domain_get ============================================================ URL: https://127.0.0.1:8000/remote/json.php?sites_web_domain_get PAYLOAD SENT: {"session_id":"**REDACTED**","primary_id":1} ============================================================ RESPONSE: sites_web_domain_get ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Sat, 06 Jun 2026 06:30:20 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => array ( 'domain_id' => '1', 'sys_userid' => '2', 'sys_groupid' => '2', 'sys_perm_user' => 'riud', 'sys_perm_group' => 'ru', 'sys_perm_other' => '', 'server_id' => '1', 'ip_address' => '*', 'ipv6_address' => '', 'domain' => 'vvveb.test', 'type' => 'vhost', 'parent_domain_id' => '0', 'vhost_type' => 'name', 'document_root' => '/var/www/clients/client1/web1', 'web_folder' => '', 'system_user' => 'web1', 'system_group' => 'client1', 'hd_quota' => '-1', 'traffic_quota' => '-1', 'cgi' => 'n', 'ssi' => 'n', 'suexec' => 'y', 'errordocs' => '0', 'is_subdomainwww' => '1', 'subdomain' => 'www', 'php' => 'php-fpm', 'ruby' => 'n', 'python' => 'n', 'perl' => 'n', 'redirect_type' => 'redirect', 'redirect_path' => 'http://example.com', 'seo_redirect' => '', 'rewrite_to_https' => 'n', 'ssl' => 'n', 'ssl_letsencrypt' => 'n', 'ssl_letsencrypt_exclude' => 'n', 'ssl_state' => '', 'ssl_locality' => '', 'ssl_organisation' => '', 'ssl_organisation_unit' => '', 'ssl_country' => 'AF', 'ssl_domain' => 'vvveb.test', 'ssl_request' => '', 'ssl_cert' => '', 'ssl_bundle' => '', 'ssl_key' => '', 'ssl_action' => '', 'stats_password' => NULL, 'stats_type' => 'awstats', 'allow_override' => 'All', 'apache_directives' => '', 'nginx_directives' => '', 'php_fpm_use_socket' => 'y', 'php_fpm_chroot' => 'n', 'pm' => 'ondemand', 'pm_max_children' => '10', 'pm_start_servers' => '2', 'pm_min_spare_servers' => '1', 'pm_max_spare_servers' => '5', 'pm_process_idle_timeout' => '10', 'pm_max_requests' => '0', 'php_open_basedir' => '/var/www/clients/client1/web1/web:/var/www/clients/client1/web1/private:/var/www/clients/client1/web1/tmp:/var/www/vvveb.test/web:/srv/www/vvveb.test/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom', 'custom_php_ini' => '', 'backup_interval' => 'none', 'backup_copies' => '1', 'backup_format_web' => 'default', 'backup_format_db' => 'gzip', 'backup_encrypt' => 'n', 'backup_password' => '', 'backup_excludes' => '', 'active' => 'y', 'traffic_quota_lock' => 'n', 'proxy_directives' => '', 'last_quota_notification' => NULL, 'rewrite_rules' => 'return 302 https://example.com;', 'added_date' => '2026-05-21', 'added_by' => '**REDACTED**', 'directive_snippets_id' => '0', 'enable_pagespeed' => 'n', 'http_port' => '80', 'https_port' => '443', 'folder_directive_snippets' => NULL, 'log_retention' => '30', 'proxy_protocol' => 'n', 'server_php_id' => '12', 'jailkit_chroot_app_sections' => '', 'jailkit_chroot_app_programs' => '', 'delete_unused_jailkit' => 'n', 'last_jailkit_update' => '2026-06-05', 'last_jailkit_hash' => 'force_update1780629302', 'disable_symlinknotowner' => 'n', ), ) ============================================================ REQUEST: logout ============================================================ URL: https://127.0.0.1:8000/remote/json.php?logout PAYLOAD SENT: {"session_id":"**REDACTED**"} ============================================================ RESPONSE: logout ============================================================ HTTP CODE: 200 RAW HEADERS: HTTP/2 200 server: nginx date: Sat, 06 Jun 2026 06:30:20 GMT content-type: application/json; charset="utf-8" pragma: no-cache cache-control: no-store, no-cache, max-age=0, must-revalidate vary: Accept-Encoding RAW BODY: {"code":"ok","message":"","response":true} DECODED RESPONSE: array ( 'code' => 'ok', 'message' => '', 'response' => true, ) ============================================================ FINAL SUMMARY ============================================================ domain_id: 1 client_id: 1 old directive_snippets_id: '0' requested directive_snippets_id: '1' after directive_snippets_id: '0' update response: 0