Skip to content

Commit f27665c

Browse files
authored
Merge branch 'main' into nginx-one-new-homepage
2 parents 235b3a9 + ac82d83 commit f27665c

File tree

156 files changed

+25262
-595
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

156 files changed

+25262
-595
lines changed

config/_default/config.toml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ enableGitInfo = true
4747
"taxonomyTerm"
4848
]
4949
taxonomiesExcludedFromSitemap = ["tags", "categories", "doctypes"]
50-
50+
unitversion= "1.34.1"
51+
unitversionv= "v1.34.1"
5152
#logo = ""
5253

5354
# Version lists; used by the versions shortcode
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
Run the following command (as root) so Unit can access the application
2+
directory (If the application uses several directories, run the command for
3+
each one):
4+
5+
```console
6+
# chown -R unit:unit /path/to/app/ # User and group that Unit's router runs as by default
7+
```
8+
9+
10+
{{< note >}}
11+
The **unit:unit** user-group pair is available only with
12+
[official packages]({{< relref "/unit/installation.md#installation-precomp-pkgs" >}})
13+
, Docker [images]({{< relref "/unit/installation.md#installation-docker" >}}),
14+
and some [third-party repos]({{< relref "/unit/installation.md#installation-community-repos" >}}). Otherwise, account names may differ; run the `ps aux | grep unitd` command to be sure.
15+
{{< /note >}}
16+
17+
For further details, including permissions, see the
18+
[security checklist]({{< relref "/unit/howto/security.md#secutiry-apps" >}}).
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
Install {{ app }}'s [app-link]. Here, we install it at **/path/to/app/**; use
2+
a real path in your configuration.
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Install and configure {{ app }}'s [app-preq].
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Install [Unit]({{< relref "/unit/installation.md#installation-precomp-pkgs" >}}) with a {{ mod }} language module.
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
Assuming the JSON above was added to
2+
`config.json`. Run the following command as root:
3+
4+
```console
5+
# curl -X PUT --data-binary @config.json --unix-socket \
6+
/path/to/control.unit.sock \ # Path to Unit's control socket in your installation
7+
http://localhost/config/ # Path to the config section in Unit's control API
8+
```
9+
10+
{{< note >}}
11+
The [control socket]({{< relref "/unit/installation.md#configuration-socket" >}}) path may vary; run
12+
`unitd -h` or see
13+
[Startup and shutdown]({{< relref "/unit/howto/source.md#source-startup" >}}) for details.
14+
{{< /note >}}

content/includes/unit/version.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1.34.1

content/nginx/admin-guide/basic-functionality/runtime-control.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ where `<SIGNAL>` can be one of the following:
3232
- `quit` – Shut down gracefully (the `SIGQUIT` signal)
3333
- `reload` – Reload the configuration file (the `SIGHUP` signal)
3434
- `reopen` – Reopen log files (the `SIGUSR1` signal)
35-
- `stop` – Shut down immediately (or fast shutdown, the `SIGTERM` singal)
35+
- `stop` – Shut down immediately (or fast shutdown, the `SIGTERM` signal)
3636

3737
The `kill` utility can also be used to send a signal directly to the master process. The process ID of the master process is written, by default, to the **nginx.pid** file, which is located in the **/usr/local/nginx/logs** or **/var/run** directory.
3838

content/nginx/admin-guide/installing-nginx/installing-nginx-open-source.md

Lines changed: 795 additions & 577 deletions
Large diffs are not rendered by default.

content/nginx/deployment-guides/single-sign-on/keycloak.md

Lines changed: 63 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -24,29 +24,77 @@ This guide explains how to enable single sign-on (SSO) for applications being pr
2424

2525
## Configure Keycloak {#keycloak-setup}
2626

27-
1. Log in to your Keycloak admin console, for example, `https://<keycloak-server>/auth/admin/`.
27+
{{<tabs name="configure-keycloak">}}
2828

29-
2. In the left navigation, go to **Clients**.then
29+
{{%tab name="Standard OIDC"%}}
3030

31-
3. Select **Create** and provide the following details:
31+
1. Log in to your Keycloak admin console, for example, `https://<keycloak-server>/admin/master/console/`.
3232

33-
- Enter a **Client ID**, for example, `nginx-demo-app`. You will need it later when configuring NGINX Plus.
33+
2. In the left navigation, go to **Clients**, then
3434

35-
- Set **Client Protocol** to **openid-connect**.
35+
3. Select **Create client** and provide the following details:
3636

37-
- Select **Save**.
37+
- Set **Client type** to **OpenID Connect**.
38+
39+
- Enter a **Client ID**, for example, `nginx-demo-app`. You will need it later when configuring NGINX Plus.
40+
41+
- Select **Next**.
3842

39-
4. In the **Settings** tab of your new client:
43+
4. In the **Capability Config** section:
4044

41-
- Set **Access Type** to `confidential`.
45+
- Set **Client Authentication** to **On**. This sets the client type to **confidential**.
46+
47+
- Select **Next**.
4248

43-
- Add a **Redirect URI**, for example:
49+
5. In the **Login Settings** section:
50+
51+
- Add a **Redirect URI**, for example:
4452
```
4553
https://demo.example.com/oidc_callback
4654
```
4755
- Select **Save**.
4856
49-
5. In the **Credentials** tab, make note of the **Client Secret**. You will need it later when configuring NGINX Plus.
57+
6. In the **Credentials** tab, make note of the **Client Secret**. You will need it later when configuring NGINX Plus.
58+
59+
{{%/tab%}}
60+
61+
{{%tab name="Using PKCE"%}}
62+
63+
1. Log in to your Keycloak admin console, for example, `https://<keycloak-server>/auth/admin/`.
64+
65+
2. In the left navigation, go to **Clients**, then
66+
67+
3. Select **Create client** and provide the following details:
68+
69+
- Set **Client type** to **OpenID Connect**.
70+
71+
- Enter a **Client ID**, for example, `nginx-demo-app`. You will need it later when configuring NGINX Plus.
72+
73+
- Select **Next**.
74+
75+
4. In the **Capability Config** section:
76+
77+
- Set **Client Authentication** to **Off**. This sets the client type to **public**.
78+
79+
- Unselect the **Direct access grants** in the **Authentication Flow** section.
80+
81+
- Select **Next**
82+
83+
5. In the **Login Settings** section:
84+
85+
- Add a **Redirect URI**, for example:
86+
```
87+
https://demo.example.com/oidc_callback
88+
```
89+
- Select **Save**.
90+
91+
6. In the **Advanced** tab, under the **Advanced Settings** section set the **Proof Key for Code Exchange Code Challenge Method** to **S256**.
92+
93+
7. Note that as opposed to standard OIDC flow, PKCE does not use Client Secrets, so there is no Credentials tab. This is expected.
94+
95+
{{%/tab%}}
96+
97+
{{</tabs>}}
5098
5199
### Assign Users or Groups
52100
@@ -63,7 +111,7 @@ This step is optional, and is necessary if you need to restrict or organize user
63111
64112
## Set up NGINX Plus {#nginx-plus-setup}
65113
66-
With Keycloak configured, you can enable OIDC on NGINX Plus. NGINX Plus serves as the Rely Party (RP) application &mdash; a client service that verifies user identity.
114+
With Keycloak configured, you can enable OIDC on NGINX Plus. NGINX Plus serves as the Relying Party (RP) application &mdash; a client service that verifies user identity.
67115
68116
1. Ensure that you are using the latest version of NGINX Plus by running the `nginx -v` command in a terminal:
69117
@@ -76,7 +124,8 @@ With Keycloak configured, you can enable OIDC on NGINX Plus. NGINX Plus serves a
76124
nginx version: nginx/1.27.4 (nginx-plus-r34)
77125
```
78126
79-
2. Ensure that you have the values of the **Client ID**, **Client Secret**, and **Issuer** obtained during [Keycloak Configuration](#keycloak-setup).
127+
2. Ensure that you have the values of the **Client ID**, **Client Secret**, and **Issuer** obtained during
128+
[Keycloak Configuration](#keycloak-setup) if applicable. PKCE will not have a **Client Secret**.
80129
81130
3. In your preferred text editor, open the NGINX configuration file (`/etc/nginx/nginx.conf` for Linux or `/usr/local/etc/nginx/nginx.conf` for FreeBSD).
82131
@@ -110,7 +159,8 @@ With Keycloak configured, you can enable OIDC on NGINX Plus. NGINX Plus serves a
110159
111160
- your actual Keycloak **Client ID** obtained in [Keycloak Configuration](#keycloak-setup) with the [`client_id`](https://nginx.org/en/docs/http/ngx_http_oidc_module.html#client_id) directive
112161
113-
- your **Client Secret** obtained in [Keycloak Configuration](#keycloak-setup) with the [`client_secret`](https://nginx.org/en/docs/http/ngx_http_oidc_module.html#client_secret) directive
162+
- (if not using PKCE) your **Client Secret** obtained in [Keycloak Configuration](#keycloak-setup) with the
163+
[`client_secret`](https://nginx.org/en/docs/http/ngx_http_oidc_module.html#client_secret) directive
114164
115165
- the **Issuer** URL obtained in [Keycloak Configuration](#keycloak-setup) with the [`issuer`](https://nginx.org/en/docs/http/ngx_http_oidc_module.html#client_secret) directive
116166

content/unit/_index.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
title: NGINX Unit
3+
description: A lightweight web app server that combines several layers of the typical application stack into a single component.
4+
url: /nginx-unit/
5+
cascade:
6+
logo: "NGINX-Unit-product-icon-RGB.png"
7+
---

content/unit/about.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
title: About NGINX Unit
3+
weight: 100
4+
toc: true
5+
---
6+
7+
# Universal web app server
8+
9+
NGINX Unit is a lightweight and versatile application runtime that provides the
10+
essential components for your web application as a single open-source server:
11+
running application code (including WebAssembly), serving static assets,
12+
handling TLS and request routing.
13+
14+
Unit was created by [nginx](https://nginx.org/en/) team members from scratch to
15+
be highly efficient and fully configurable at runtime. You can read the details
16+
about the latest release in the [news]({{< relref "/unit/news/">}}) section.
17+
18+
- See a quickstart [guide](https://github.com/nginx/unit/) on our GitHub page.
19+
- Browse the [Changelog]({{< relref "/unit/changes/">}}) or see the release notes in the [Releases and announcements]({{< relref "/unit/news/">}}) archive.
20+
- Check out the discussion of our [key features]({{< relref "/unit/keyfeatures.md">}}) for further
21+
details.
22+
- Peek at our future plans with a GitHub-based [roadmap](https://github.com/orgs/nginx/projects/1).
23+
24+
25+
Watch the entire NGINX Unit tutorial course in the [NGINX YouTube channel](https://www.youtube.com/playlist?list=PLGz_X9w9raXdV3vuPUu0kKBSBjG9rPaUf).

0 commit comments

Comments
 (0)