Plesk

Nginx shows warning when running nginx -t: nginx: [warn] protocol options redefined for 203.0.113.2

Symptoms

Cause

Product issue:

  • PPPM-14042 "Enabling HTTP/2 no longer results in the œ'protocol options redefined' warning."
    Fixed in:

Resolution

Please consider updating your server:

Workaround

If update is not possible for some reason you may try the following

workaround

Use Event Handlers to update nginx configuration files:

  1. Connect to the server via SSH

  2. Create and Edit file /root/update_nginx.sh that will be used by the Event Handler:

    #!/bin/bash
    vhostDir=$(grep VHOST /etc/psa/psa.conf | awk {'print $2'})
    if [ ! -z "$vhostDir" ] ; then
    sleep 15
    find $vhostDir/system/*/conf -type f -name "nginx.conf" | xargs -i sed -i '/http2/!s/(listen [0-9.]*:443 ssl)/1 http2/' {}
    find /etc/nginx/plesk.conf.d/webmails/ -type f -name "*.conf" | xargs -i sed -i '/http2/!s/(listen [0-9.]*:443 ssl)/1 http2/' {}
    find /etc/nginx -type f -name "*.conf" | xargs -i sed -i '/http2/!s/(listen [0-9.]*:443 ssl)/1 http2/' {}
    else
    echo "Vhost DIR fetch failed. Exiting ..." && exit 0
    fi

  3. Set executable permissions to the script:

    # chmod +x /root/update_nginx.sh

  4. Log into Plesk

  5. Create Event Handler by going to Tools & Settings > Event Manager > Add Event Handler and add the following details:

    • Event: Physical hosting created
    • Priority: 50
    • User: root
    • Command: /root/update_nginx.sh
  6. Repeat step 5 for Event: Physical hosting updated

  • Optionally it is possible to force the nginx configuration files update immediately by running the script manually once:

    # /root/update_nginx.sh

Exit mobile version