beyondcode / expose

A beautiful, fully open-source, tunneling service - written in pure PHP
https://expose.dev
MIT License
4.24k stars 262 forks source link

[Bug]: Sudden termination of Expose #418

Closed ReckeDJ closed 2 months ago

ReckeDJ commented 3 months ago

System architecture

Mac, ARM64 (M1, M2, etc)

PHP Version

8.3.9

Bug description

Since today, Expose quits unexpectedly without any errors or warnings, seconds after running. See the video:

https://github.com/user-attachments/assets/32042208-68ba-46f2-a3fb-43acb9a82f89

Steps to reproduce

Run: expose

Relevant log output

➜  cashier expose -vvv

Box Requirements Checker
========================

> Using PHP 8.3.9
> PHP is using the following php.ini file:
  /opt/homebrew/etc/php/8.3/php.ini

> Checking Box requirements:
  ✔ The application requires the version "^8.1" or greater.
  ✔ The application requires the extension "zlib".
  ✔ The application requires the extension "json".

 [OK] Your system is ready to run the application.

Using auth token: [REDACTED]
Trying to use custom domain: cashier

You are not allowed to specify custom subdomains. Please upgrade to Expose Pro. Assigning a random subdomain instead.

Status:         Expose Free - Get custom subdomains and access to our performant global server network with Expose Pro! ➡️  https://expose.dev/get-pro
Shared URL:     cashier.test:443
Dashboard:      http://127.0.0.1:4040
Public HTTP:        http://4wtdp4s3jc.sharedwithexpose.com
Public HTTPS:       https://4wtdp4s3jc.sharedwithexpose.com

Remaining time: 00:59:59
  200    GET   / .......................................................... 09:31:21  105 ms
➜  cashier
➜  cashier composer global show beyondcode/expose
Changed current directory to /Users/user/.composer
name     : beyondcode/expose
descrip. : Create public URLs for local sites through any firewall and VPN.
keywords : expose, ngrok, tunnel
versions : * 2.6.2
released : 2023-04-26, 1 year ago
type     : project
license  : MIT License (MIT) (OSI approved) https://spdx.org/licenses/MIT.html#licenseText
homepage : https://sharedwithexpose.com
source   : [git] https://github.com/beyondcode/expose.git c9ec4e6f7a52590ca1ef8845f9299c38ce6e7644
dist     : [zip] https://api.github.com/repos/beyondcode/expose/zipball/c9ec4e6f7a52590ca1ef8845f9299c38ce6e7644 c9ec4e6f7a52590ca1ef8845f9299c38ce6e7644
path     : /Users/user/.composer/vendor/beyondcode/expose
names    : beyondcode/expose

support
issues : https://github.com/beyondcode/expose/issues
source : https://github.com/beyondcode/expose/tree/2.6.2

autoload
files
psr-4
App\ => app/

requires
ext-json *
laravel-zero/phar-updater ^1.2
php ^8.1

requires (dev)
cboden/ratchet dev-master
clue/block-react ^1.4
clue/reactphp-sqlite dev-modular-worker-for-phar-support
guzzlehttp/guzzle ^7.4
guzzlehttp/psr7 ^1.7
illuminate/http ^9.0
illuminate/log ^9.0
illuminate/pipeline ^9.0
illuminate/validation ^9.0
laminas/laminas-http ^2.13
laravel-zero/framework ^9.0
mockery/mockery ^1.4.2
nikic/php-parser ^v4.10
nyholm/psr7 ^1.3
octoper/cuzzle dev-master
phpunit/phpunit ^9.4.3
ratchet/pawl ^0.3.5
react/http ^1.1.0
react/socket ^1.6
react/stream ^1.1.1
riverline/multipart-parser ^2.0
symfony/expression-language ^5.2
symfony/http-kernel ^6.0
symfony/psr-http-message-bridge ^2.0
twig/twig ^3.1
➜  cashier
plandolt commented 2 months ago

Same problem here with php 8.3.10 on m1

mpociot commented 2 months ago

This error is caused by a bug in curl 8.9.1. If you downgrade curl (or upgrade to the latest unreleased master) the issue is fixed.

Vusys commented 2 months ago

One can update to the latest cURL on a Mac with:

brew install --head curl

Followed by:

brew link --force curl

cURL should then report as 8.10.0-DEV:


curl --version

curl 8.10.0-DEV (aarch64-apple-darwin23.6.0) libcurl/8.10.0-DEV OpenSSL/3.3.1 (SecureTransport) zlib/1.2.12 brotli/1.1.0 zstd/1.5.6 libidn2/2.3.7 libssh2/1.11.0 nghttp2/1.61.0 librtmp/2.3
Release-Date: [unreleased]
Protocols: dict file ftp ftps gopher gophers http https imap imaps ipfs ipns ldap ldaps mqtt pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz MultiSSL NTLM SPNEGO SSL threadsafe TLS-SRP UnixSockets zstd```