{"id":24300615,"url":"https://github.com/23tae/server-tutorial","last_synced_at":"2026-05-29T08:31:30.497Z","repository":{"id":120598607,"uuid":"610535244","full_name":"23tae/server-tutorial","owner":"23tae","description":null,"archived":false,"fork":false,"pushed_at":"2023-03-20T06:53:40.000Z","size":15,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-06T12:52:44.439Z","etag":null,"topics":["tutorial"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/23tae.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-03-07T00:55:32.000Z","updated_at":"2023-03-12T06:36:30.000Z","dependencies_parsed_at":null,"dependency_job_id":"2b709fe2-d518-4634-b888-1bc3f435b0ec","html_url":"https://github.com/23tae/server-tutorial","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/23tae/server-tutorial","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/23tae%2Fserver-tutorial","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/23tae%2Fserver-tutorial/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/23tae%2Fserver-tutorial/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/23tae%2Fserver-tutorial/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/23tae","download_url":"https://codeload.github.com/23tae/server-tutorial/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/23tae%2Fserver-tutorial/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33644178,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-29T02:00:06.066Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["tutorial"],"created_at":"2025-01-16T23:15:10.773Z","updated_at":"2026-05-29T08:31:30.492Z","avatar_url":"https://github.com/23tae.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Server tutorial\n\n# About\n## client-server program\n- ex00\n    - Server sends to client a short message.\n    - Client prints the received message.\n- ex01\n    - Client sends to server what user typed.\n    - Server prints the received message.\n    - Server sends it back to client.\n    - Client prints the received message.\n- ex02\n    - Connect to server using web browser.\n- ex03\n    - Perl script which runs web server\n\n# Compile\n- Create executables : type `make`\n- Delete executables : type `make fclean`\n- Rebuild executables : type `make re`\n\n# Usage\n## ex00~02\n- Run server\n    ```shell\n    ./server \u003cport_number\u003e\n    ```\n    - port_number : port that server will open\n\n### ex00~01\n- Run client\n    ```shell\n    ./client 127.0.0.1 \u003cport_number\u003e\n    ```\n    - port_number : server's port number\n- ex00\n    - **Server** will send message to **Client** and terminate the program.\n- ex01\n    - You can send message from **client** to **server**\n\n### ex02\n- Open web browser.\n- Open url `127.0.0.1:\u003cport_number\u003e`\n- Browser will show the message that server sent\n\n## ex03\n- Run server\n    ```shell\n    perl type-o-serve.pl\n    ```\n- Open browser\n- Connect to the following url\n    ```\n    127.0.0.1:8080\n    ```\n- Send HTTP response message in shell\n    - example\n        ```shell\n        HTTP/1.1 200 OK\n        Content-Length:12\n\n        hello world!\n        .\n        ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F23tae%2Fserver-tutorial","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F23tae%2Fserver-tutorial","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F23tae%2Fserver-tutorial/lists"}