Caddy: Free SSL over server
I have always been a fan of Nginx, but with Nginx, I always have to buy SSL for the domain configuration, with HTTPS. And, when it comes to Wildcard SSL, it costs more than the normal SSL.
Recently, I have been working with a server architect, and I came to know about Caddy - The Ultimate Server, and it's fascinating to see how it can obtain and renew the SSL certificates, automatically.
It provides the same features as Nginx but with fewer configurations and security has been added automatically too.
It supports Compression, Virtual file systems, TLS configurations, etc.
How to configure it in AWS: EC2
I created an EC2 instance, with AMI ( Amazon Linux v3 ) as an image.
After creating an instance, you can connect it either via SSH or directly through the EC2, and then you have to enter the following commands to install it
sudo yum -y install yum-plugin-copr sudo yum -y copr enable @caddy/caddy epel-8-$(arch) sudo yum -y install caddy
This will install the caddy server in the EC2 instance.
Creating the CaddyFile
After installing the caddy in your EC2 instance, you have to create a Caddyfile, in /etc/caddy folder.
To create the Caddyfile, you have to enter the below command.
sudo nano /etc/caddy/Caddyfile
And, after creating the file, you have to enter the following configuration
domain_name { reverse_proxy Ip_address:port }
For example, I have deployed the frontend and backend code in the EC2 and now I want to configure the caddy for the frontend and backend, by attaching the domain name to it.
app.aceinterview.co { reverse_proxy 3.24.60.134:3000 } api.aceinterview.co { reverse_proxy 3.24.60.145:8000 }
As you can see in the example, I configured two different domains, one for the frontend and the other for the backend.
Run the caddy server
First, you have to enable the caddy server.
sudo systemctl enable caddy
The above step will create the symlink of the caddy.
Then, you have to start the caddy
sudo systemctl start caddy
Hurray!. Your caddy server configuration is completed. Now, you got reverse proxy, SSL configuration, etc.
More commands to handle caddy in EC2.
To stop the caddy server
sudo systemctl stop caddy
If you change something in Caddyfile, then you have to restart it to take effect.
sudo systemctl restart caddy
Today I have highlighted the basic setup of caddy, and this setup will do the most of the job. For more information, you can directly checkout the caddy server website https://caddyserver.com/
The above is the detailed content of Caddy: Free SSL over server. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Frequently Asked Questions and Solutions for Front-end Thermal Paper Ticket Printing In Front-end Development, Ticket Printing is a common requirement. However, many developers are implementing...

JavaScript is the cornerstone of modern web development, and its main functions include event-driven programming, dynamic content generation and asynchronous programming. 1) Event-driven programming allows web pages to change dynamically according to user operations. 2) Dynamic content generation allows page content to be adjusted according to conditions. 3) Asynchronous programming ensures that the user interface is not blocked. JavaScript is widely used in web interaction, single-page application and server-side development, greatly improving the flexibility of user experience and cross-platform development.

There is no absolute salary for Python and JavaScript developers, depending on skills and industry needs. 1. Python may be paid more in data science and machine learning. 2. JavaScript has great demand in front-end and full-stack development, and its salary is also considerable. 3. Influencing factors include experience, geographical location, company size and specific skills.

Discussion on the realization of parallax scrolling and element animation effects in this article will explore how to achieve similar to Shiseido official website (https://www.shiseido.co.jp/sb/wonderland/)...

The latest trends in JavaScript include the rise of TypeScript, the popularity of modern frameworks and libraries, and the application of WebAssembly. Future prospects cover more powerful type systems, the development of server-side JavaScript, the expansion of artificial intelligence and machine learning, and the potential of IoT and edge computing.

Learning JavaScript is not difficult, but it is challenging. 1) Understand basic concepts such as variables, data types, functions, etc. 2) Master asynchronous programming and implement it through event loops. 3) Use DOM operations and Promise to handle asynchronous requests. 4) Avoid common mistakes and use debugging techniques. 5) Optimize performance and follow best practices.

How to merge array elements with the same ID into one object in JavaScript? When processing data, we often encounter the need to have the same ID...

Explore the implementation of panel drag and drop adjustment function similar to VSCode in the front-end. In front-end development, how to implement VSCode similar to VSCode...
