У меня есть служба python jsonrpc, работающая на сервере на порту 8082.
Я хочу достичь этого с помощью php jsonRPCClient. (и должно быть https)
Мой сервер nginx выглядит так:
server {
listen 443;
server_name service.mydomain.com;
ssl on;
ssl_certificate /path/to/crt/domain.crt;
ssl_certificate_key /path/to/crt/domain.key;
keepalive_timeout 70;
access_log /var/log/nginx/domain.access.log;
error_log /var/log/nginx/domain.error.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:8082;
}
}
Когда я набираю в браузере: https://service.mydomain.com тогда я вижу правильный результат от обслуживания.
Но если я назову это с помощью php-кода, например:
$rpc = new jsonRPCClient("https://service.mydomain.com");
return $rpc->create_client($client_id);
Тогда я не могу с ним работать ... и из журнала службы видно, что на этот раз запрос никогда не доходит до службы.
Любые идеи о том, как решить эту проблему, были бы очень ценными.
Спасибо
(ps: ключи - это самоподписанные сертификаты, если что-то меняет)
Настройка nginx по умолчанию для порта 80:
server {
listen 80 default;
server_name www.mydomain.com;
access_log /var/log/nginx/localhost.access.log;
location / {
proxy_pass http://127.0.0.1:81;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Port 80;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_max_temp_file_size 0;
}
}
И настройка nginx для 443 портов:
server {
listen 443;
server_name www.mydomain.com;
ssl on;
ssl_certificate /path/to/crt/domain.crt;
ssl_certificate_key /path/to/crt/domain.key;
keepalive_timeout 70;
access_log /var/log/nginx/domain.access.log;
error_log /var/log/nginx/domain.error.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://127.0.0.1:81;
}
}
Веб-сайт обслуживается через порт 81 apache:
<VirtualHost *:81>
ServerName www.mydomain.com
DocumentRoot "/var/www/domain"
DirectoryIndex index.php
<Directory "/var/www/domain>
AllowOverride All
Allow From All
</Directory>
</VirtualHost>