c - 无需在地址后写端口即可访问服务器

标签 c http port

我正在用 C 语言创建我的自定义 http 服务器。sockaddr_in 看起来像这样:

my_addr.sin_family = AF_INET;
my_addr.sin_port = htons(8080);
my_addr.sin_addr.s_addr = htol(INADDR_ANY);

我的问题是如何在不在地址后写入端口的情况下发送我的请求。 例如 192.168.1.100 而不是 192.168.1.100:8080 或 mydomain.loc 而不是 mydomain.loc:8080

最佳答案

how I can send my [HTTP] request without writing port after address[?]

如果不指定特定端口,则无法与 TCP 端点通信。然而,各种服务都有常规(默认)端口,如果用户未明确指定,客户端软件通常会使用服务的常规端口。

HTTP 协议(protocol)的常规端口是 80。如果您的服务器在该端口上运行,那么 HTTP 用户代理(例如 Web 浏览器)很可能不需要您指定该端口;相反,他们会默默地为您插入它。您需要服务器计算机的根/管理员权限才能在端口 80 或任何其他小于 1024 的端口上运行服务器软件。

关于c - 无需在地址后写端口即可访问服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41381261/

相关文章:

typescript - nestjs 拦截并修改传出的 http 请求

redis - Traefik - 无法为不同域公开具有相同端口的 redis docker 容器

c - 在 C 语言中,调用者是否曾经特别对待可变参数?

C - 检查是否不相等的最佳方法

php - 在 PHP 中编写透明的 HTTP 代理脚本

.htaccess - 重定向到 https ://www. example.com

node.js - 如何使用 SSL 在本地端口 80 - 443 上公开带有 DDEV Web 容器的 Nodejs 应用程序

ubuntu - 如何杀死在 Windows、Linux 和 MacOS 中特定端口上运行的进程 - C# (.Net Core)

c - 我不断收到一个未知错误,说预期的表达式 :

c - 指针 C 中的左值、右值