首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用proxy_wsTunnel - Apache的SSL上的PHP

使用proxy_wsTunnel - Apache的SSL上的PHP
EN

Stack Overflow用户
提问于 2017-03-13 12:50:31
回答 1查看 4.1K关注 0票数 3

我有一个php websocket服务器正在运行,但我想通过https连接到它。这是我的JS:var conn = new WebSocket('wss://81.169.228.159:3671/wss2');

这是我的apache配置:

ProxyPass /wss2/ ws://domain:3671/

我启用了proxyproxy_wstunnel

那我做错什么了?

错误日志:

代码语言:javascript
复制
[Mon Mar 13 04:38:04.228450 2017] [mpm_prefork:notice] [pid 6683] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 04:38:04.228471 2017] [core:notice] [pid 6683] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 12:42:39.475641 2017] [:error] [pid 12432] [client 195.169.9.201:8546] script '/var/www/html/luukwuijster.io/phpinfo.php' not found or unable to stat
[Mon Mar 13 12:56:25.370986 2017] [mpm_prefork:notice] [pid 6683] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 12:56:26.539948 2017] [mpm_prefork:notice] [pid 26932] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 12:56:26.539972 2017] [core:notice] [pid 26932] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 13:06:36.280229 2017] [mpm_prefork:notice] [pid 26932] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 13:06:37.473220 2017] [mpm_prefork:notice] [pid 27256] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 13:06:37.473248 2017] [core:notice] [pid 27256] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 13:19:52.144983 2017] [mpm_prefork:notice] [pid 27256] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 13:19:53.235045 2017] [mpm_prefork:notice] [pid 27775] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 13:19:53.235083 2017] [core:notice] [pid 27775] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 13:22:21.467607 2017] [mpm_prefork:notice] [pid 27775] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 13:22:22.618416 2017] [mpm_prefork:notice] [pid 27911] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 13:22:22.618455 2017] [core:notice] [pid 27911] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 13:28:08.356148 2017] [mpm_prefork:notice] [pid 27911] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 13:28:09.546926 2017] [mpm_prefork:notice] [pid 28540] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 13:28:09.546964 2017] [core:notice] [pid 28540] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 13:35:26.856446 2017] [mpm_prefork:notice] [pid 28540] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 13:35:28.532498 2017] [mpm_prefork:notice] [pid 29153] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 13:35:28.532541 2017] [core:notice] [pid 29153] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 13:46:19.084561 2017] [ssl:error] [pid 29170] [client 208.93.152.93:54712] AH02042: rejecting client initiated renegotiation
[Mon Mar 13 13:57:14.410892 2017] [mpm_prefork:notice] [pid 29153] AH00169: caught SIGTERM, shutting down
[Mon Mar 13 13:57:16.465381 2017] [mpm_prefork:notice] [pid 29927] AH00163: Apache/2.4.18 (Ubuntu) OpenSSL/1.0.2g configured -- resuming normal operations
[Mon Mar 13 13:57:16.465424 2017] [core:notice] [pid 29927] AH00094: Command line: '/usr/sbin/apache2'
[Mon Mar 13 14:00:03.312882 2017] [:error] [pid 29936] [client 81.169.228.159:33706] PHP Notice:  Undefined index: text in /var/www/html/luukwuijster.io/slack/cronofy/huiswerk.php on line 9
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-03-22 12:14:01

我假设您有一个React\Socket\Server在监听端口8080 (又名php push-server.php)。在棘轮网站上的教程应该会让你达到这一点。

我还假设您已经配置并加载了问题中提到的proxyproxy_wstunnel apache模块。

下面是我个人用来实现WebSocket连接的配置。

为了获得更好的URL,我使用/ws/而不是教程中提到的/wss2/。随时根据需要调整配置。

Apache Config

代码语言:javascript
复制
#SSL (Secure)                                                                                                                                                                                                               
<VirtualHost *:443>
    DocumentRoot /FILE_PATH_TO_WEBROOT
    ServerName local.sitename.com
    ServerAlias local.sitename.com
    <Directory /FILE_PATH_TO_WEBROOT>
        Options FollowSymLinks
        AllowOverride all 
        php_flag display_errors On
        Require all granted
    </Directory>
    SSLCertificateFile /etc/httpd/ssl/.crt
    SSLCertificateKeyFile /etc/httpd/ssl/.key

    ProxyRequests Off 
    ProxyPass "/ws/"  "ws://local.sitename.com:8080/"
</VirtualHost>

#NON-SSL (Insecure)
<VirtualHost *:80>
    DocumentRoot /FILE_PATH_TO_WEBROOT
    ServerName local.sitename.com
    ServerAlias local.sitename.com
    <Directory /FILE_PATH_TO_WEBROOT>
        Options FollowSymLinks
        AllowOverride all 
        php_flag display_errors On
        Require all granted
    </Directory>
    ProxyRequests Off 
    ProxyPass "/ws/"  "ws://local.sitename.com:8080/"
</VirtualHost>

安全JavaScript套接字连接

代码语言:javascript
复制
var conn = new WebSocket('wss://local.sitename.com/ws/');

不安全JavaScript套接字连接

代码语言:javascript
复制
var conn = new WebSocket('ws://local.sitename.com/ws/');
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42764084

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档