PHP site using the wrong port

borneo

New member
Hi,

I use CloudPanel (Version: 2.5.1) on my VPS an I have an issue with a PHP site.

I have 3 reverse proxies. No problem here.

Code:
aaa.myhost.com -> http://127.0.0.1:8080 bbb.myhost.com -> http://127.0.0.1:8083 ccc.myhost.com -> http://127.0.0.1:8084

New PHP site:

The domain is ddd.myhost.com

I modified the vhost and changed 8080 to 8081.

My issue is that ddd.myhost.com returns the content aaa.myhost.com (only the html, css files and image are not found)

What am I doing wrong?

PHP site vhost (ddd.myhost.com):

Code:
`server {

Code:
listen 80;

Code:
listen [::]:80;

Code:
listen 443 ssl http2;

Code:
listen [::]:443 ssl http2;

Code:
{{ssl_certificate_key}}

Code:
{{ssl_certificate}}

Code:
server_name ddd.myhost.com;

Code:
{{root}}

Code:
{{nginx_access_log}}

Code:
{{nginx_error_log}}

Code:
if ($scheme != "https") {

Code:
rewrite ^ https://$host$uri permanent;

Code:
}

Code:
location ~ /.well-known {

Code:
auth_basic off;

Code:
allow all;

Code:
}

Code:
{{settings}}

Code:
location / {

Code:
{{varnish_proxy_pass}}

Code:
proxy_set_header Host $http_host;

Code:
proxy_set_header X-Forwarded-Host $http_host;

Code:
proxy_set_header X-Real-IP $remote_addr;

Code:
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

Code:
proxy_hide_header X-Varnish;

Code:
proxy_redirect off;

Code:
proxy_max_temp_file_size 0;

Code:
proxy_connect_timeout 720;

Code:
proxy_send_timeout 720;

Code:
proxy_read_timeout 720;

Code:
proxy_buffer_size 128k;

Code:
proxy_buffers 4 256k;

Code:
proxy_busy_buffers_size 256k;

Code:
proxy_temp_file_write_size 256k;

Code:
}

Code:
location ~* ^.+.(css|js|jpg|jpeg|gif|png|ico|gz|svg|svgz|ttf|otf|woff|woff2|eot|mp4|ogg|ogv|webm|webp|zip|swf|map|mjs)$ {

Code:
add_header Access-Control-Allow-Origin "*";

Code:
expires max;

Code:
access_log off;

Code:
}

Code:
location ~ /.(ht|svn|git) {

Code:
deny all;

Code:
}

Code:
if (-f $request_filename) {

Code:
break;

Code:
}

Code:
}

Code:
server {

Code:
listen 8081;

Code:
listen [::]:8081;

Code:
server_name ddd.myhost.com;

Code:
{{root}}

Code:
try_files $uri $uri/ /index.php?$args;

Code:
index index.php index.html;

Code:
location ~ .php$ {

Code:
include fastcgi_params;

Code:
fastcgi_intercept_errors on;

Code:
fastcgi_index index.php;

Code:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

Code:
try_files $uri =404;

Code:
fastcgi_read_timeout 3600;

Code:
fastcgi_send_timeout 3600;

Code:
fastcgi_param HTTPS "on";

Code:
fastcgi_param SERVER_PORT 443;

Code:
fastcgi_pass 127.0.0.1:{{php_fpm_port}};

Code:
fastcgi_param PHP_VALUE "{{php_settings}}";

Code:
}

Code:
if (-f $request_filename) {

Code:
break;

Code:
}

Code:
}`
 
{{{varnish_proxy_pass}} It's CloudPanel's automatic template variable and it still shows the old port 8080.

When I change this line to proxy_pass http://127.0.0.1:8081 it redirects directly to 8081 and the problem is solved.

Template variables sometimes don't update in CloudPanel, so it's safer to write it manually.

Code:
location / {
    proxy_pass http://127.0.0.1:8081;  # {{varnish_proxy_pass}}
    proxy_set_header Host $http_host;
    proxy_set_header X-Forwarded-Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_hide_header X-Varnish;
    proxy_redirect off;
    proxy_max_temp_file_size 0;
    proxy_connect_timeout      720;
    proxy_send_timeout         720;
    proxy_read_timeout         720;
    proxy_buffer_size          128k;
    proxy_buffers              4 256k;
    proxy_busy_buffers_size    256k;
    proxy_temp_file_write_size 256k;
}
 
Back
Top