"ambiguous option: --http=" error when running Certbot on macOS

Hello everyone,

I'm trying to obtain an SSL certificate for my subdomain using Certbot on macOS Sequoia 15.1.1, but I'm encountering the following error when running the command `sudo certbot --nginx -c /opt/homebrew/etc/nginx/nginx.conf -d app.com:

certbot: error: ambiguous option: --http={ could match --http-01-port, --http-01-address, --https-port

I've tried several troubleshooting steps, but the error persists. Here's a summary of what I've done:

  • Checked Zsh configuration: I've reviewed my .zshrc and .zprofile files to ensure there are no configurations interfering with the certbot command.
  • Reinstalled Certbot: I've uninstalled and reinstalled Certbot multiple times using Homebrew, including using the --force option to ensure a clean reinstall.
  • Created a new user: I created a new user account on my system and tried running certbot from there, but the error persists.
  • Verified executable architecture: I've verified that the Python executable used by Certbot is built for the correct architecture (arm64) using the lipo -info and file commands.
  • Updated macOS: I've updated my operating system to the latest version (macOS Sequoia 15.1.1).
  • Tried debugging with lldb and dtruss: I've attempted to debug Certbot using lldb and dtruss, but haven't been able to identify the root cause.

Additional information:

  • Certbot version: 3.0.1
  • Certbot installation method: Homebrew
  • Shell: Zsh
  • Output of lipo -info /opt/homebrew/bin/certbot: fatal error: /Library/Developer/CommandLineTools/usr/bin/lipo: can't figure out the architecture type of: /opt/homebrew/bin/certbot
  • Output of file /opt/homebrew/bin/certbot: /opt/homebrew/bin/certbot: a /opt/homebrew/Cellar/certbot/3.0.1/libexec/bin/python script text executable, ASCII text
  • Output of file /opt/homebrew/bin/python3: /opt/homebrew/bin/python3: Mach-O 64-bit executable arm64

I would appreciate any help or suggestions to resolve this issue.

Thank you in advance.

Nico

1 Like

You are misunderstanding the use of "-c" ["--config"].
It is not used to define the configuration file location for nginx.
It is used to define an alternate configuration file location for certbot.
[which is thus baffled by seeing an nginx config]

See: User Guide — Certbot 3.1.0.dev0 documentation

5 Likes