Skip to content

Commit 6df7b72

Browse files
committed
Forward scheme and http code added for redirection hosts
You can now configure the forward_scheme and forward_http_code on user interface (section redirection hosts)
1 parent ea28da9 commit 6df7b72

File tree

6 files changed

+61
-4
lines changed

6 files changed

+61
-4
lines changed

.version

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.8.0
1+
2.8.1

backend/schema/endpoints/redirection-hosts.json

+26
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,12 @@
1818
"domain_names": {
1919
"$ref": "../definitions.json#/definitions/domain_names"
2020
},
21+
"forward_http_code": {
22+
"$ref": "../definitions.json#/definitions/http_code"
23+
},
24+
"forward_scheme": {
25+
"$ref": "../definitions.json#/definitions/scheme"
26+
},
2127
"forward_domain_name": {
2228
"$ref": "../definitions.json#/definitions/domain_name"
2329
},
@@ -67,6 +73,12 @@
6773
"domain_names": {
6874
"$ref": "#/definitions/domain_names"
6975
},
76+
"forward_http_code": {
77+
"$ref": "#/definitions/forward_http_code"
78+
},
79+
"forward_scheme": {
80+
"$ref": "#/definitions/forward_scheme"
81+
},
7082
"forward_domain_name": {
7183
"$ref": "#/definitions/forward_domain_name"
7284
},
@@ -134,12 +146,20 @@
134146
"additionalProperties": false,
135147
"required": [
136148
"domain_names",
149+
"forward_scheme",
150+
"forward_http_code",
137151
"forward_domain_name"
138152
],
139153
"properties": {
140154
"domain_names": {
141155
"$ref": "#/definitions/domain_names"
142156
},
157+
"forward_http_code": {
158+
"$ref": "#/definitions/forward_http_code"
159+
},
160+
"forward_scheme": {
161+
"$ref": "#/definitions/forward_scheme"
162+
},
143163
"forward_domain_name": {
144164
"$ref": "#/definitions/forward_domain_name"
145165
},
@@ -195,6 +215,12 @@
195215
"domain_names": {
196216
"$ref": "#/definitions/domain_names"
197217
},
218+
"forward_http_code": {
219+
"$ref": "#/definitions/forward_http_code"
220+
},
221+
"forward_scheme": {
222+
"$ref": "#/definitions/forward_scheme"
223+
},
198224
"forward_domain_name": {
199225
"$ref": "#/definitions/forward_domain_name"
200226
},

backend/templates/redirection_host.conf

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ server {
1818
{% include "_hsts.conf" %}
1919

2020
{% if preserve_path == 1 or preserve_path == true %}
21-
return 301 $scheme://{{ forward_domain_name }}$request_uri;
21+
return {{ forward_http_code }} {{ forward_scheme }}://{{ forward_domain_name }}$request_uri;
2222
{% else %}
23-
return 301 $scheme://{{ forward_domain_name }};
23+
return {{ forward_http_code }} {{ forward_scheme }}://{{ forward_domain_name }};
2424
{% endif %}
2525
}
2626
{% endif %}

frontend/js/app/nginx/redirection/form.ejs

+24-1
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,35 @@
2222
<input type="text" name="domain_names" class="form-control" id="input-domains" value="<%- domain_names.join(',') %>" required>
2323
</div>
2424
</div>
25-
<div class="col-sm-12 col-md-12">
25+
<div class="col-sm-4 col-md-4">
26+
<div class="form-group">
27+
<label class="form-label"><%- i18n('redirection-hosts', 'scheme') %><span class="form-required">*</span></label>
28+
<select name="forward_scheme" class="form-control custom-select" placeholder="$scheme">
29+
<option value="$scheme" <%- forward_scheme === '$scheme' ? 'selected' : '' %>>auto</option>
30+
<option value="http" <%- forward_scheme === 'http' ? 'selected' : '' %>>http</option>
31+
<option value="https" <%- forward_scheme === 'https' ? 'selected' : '' %>>https</option>
32+
</select>
33+
</div>
34+
</div>
35+
<div class="col-sm-8 col-md-8">
2636
<div class="form-group">
2737
<label class="form-label"><%- i18n('redirection-hosts', 'forward-domain') %><span class="form-required">*</span></label>
2838
<input type="text" name="forward_domain_name" class="form-control text-monospace" placeholder="" value="<%- forward_domain_name %>" required>
2939
</div>
3040
</div>
41+
<div class="col-sm-12 col-md-12">
42+
<div class="form-group">
43+
<label class="form-label"><%- i18n('redirection-hosts', 'http-status-code') %><span class="form-required">*</span></label>
44+
<select name="forward_http_code" class="form-control custom-select" placeholder="301">
45+
<option value="300" <%- forward_http_code == '300' ? 'selected' : '' %>>300 Multiple choices</option>
46+
<option value="301" <%- forward_http_code == '301' ? 'selected' : '' %>>301 Moved permanently</option>
47+
<option value="302" <%- forward_http_code == '302' ? 'selected' : '' %>>302 Found</option>
48+
<option value="303" <%- forward_http_code == '303' ? 'selected' : '' %>>303 See other</option>
49+
<option value="307" <%- forward_http_code == '307' ? 'selected' : '' %>>307 Temporary redirect</option>
50+
<option value="308" <%- forward_http_code == '308' ? 'selected' : '' %>>308 Permanent redirect</option>
51+
</select>
52+
</div>
53+
</div>
3154
<div class="col-sm-6 col-md-6">
3255
<div class="form-group">
3356
<label class="custom-switch">

frontend/js/app/nginx/redirection/list/item.ejs

+6
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,12 @@
2222
<%- i18n('str', 'created-on', {date: formatDbDate(created_on, 'Do MMMM YYYY')}) %>
2323
</div>
2424
</td>
25+
<td>
26+
<div class="text-monospace"><%- forward_http_code %></div>
27+
</td>
28+
<td>
29+
<div class="text-monospace"><%- forward_scheme %></div>
30+
</td>
2531
<td>
2632
<div class="text-monospace"><%- forward_domain_name %></div>
2733
</td>

frontend/js/models/redirection-host.js

+2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ const model = Backbone.Model.extend({
99
created_on: null,
1010
modified_on: null,
1111
domain_names: [],
12+
forward_http_code: 0,
13+
forward_scheme: null,
1214
forward_domain_name: '',
1315
preserve_path: true,
1416
certificate_id: 0,

0 commit comments

Comments
 (0)