mirror of
https://github.com/tobychui/zoraxy.git
synced 2025-05-31 04:37:20 +02:00
Created Add Routing Via Config File (markdown)
parent
02168d95a9
commit
ea4b89c2b6
78
Add-Routing-Via-Config-File.md
Normal file
78
Add-Routing-Via-Config-File.md
Normal file
@ -0,0 +1,78 @@
|
||||
Other than editing routing in the web UI, you can also create a config file and let Zoraxy load it on startup. You can put your config file under ```conf/proxy/``` as JSON file with file extension ".config". For example, here is an example of `(ST).test.localhost.config`
|
||||
|
||||
**This config structure is for Zoraxy v3 only**
|
||||
```json
|
||||
{
|
||||
"ProxyType": 1,
|
||||
"RootOrMatchingDomain": "*.test.yourdomain.com",
|
||||
"Domain": "192.168.1.100:8080",
|
||||
"RequireTLS": false,
|
||||
"BypassGlobalTLS": true,
|
||||
"SkipCertValidations": true,
|
||||
"VirtualDirectories": [
|
||||
{
|
||||
"MatchingPath": "/example/",
|
||||
"Domain": "example.com",
|
||||
"RequireTLS": true,
|
||||
"SkipCertValidations": false,
|
||||
"Disabled": false
|
||||
},
|
||||
{
|
||||
"MatchingPath": "/teacat/",
|
||||
"Domain": "sorae.co",
|
||||
"RequireTLS": true,
|
||||
"SkipCertValidations": false,
|
||||
"Disabled": false
|
||||
}
|
||||
],
|
||||
"UserDefinedHeaders": [
|
||||
{
|
||||
"Key": "X-Special-Header",
|
||||
"Value": "foo=bar"
|
||||
}
|
||||
],
|
||||
"RequireBasicAuth": false,
|
||||
"BasicAuthCredentials": [
|
||||
{
|
||||
"Username": "USERNAME",
|
||||
"PasswordHash": "PASSWORD_HASH_HERE"
|
||||
}
|
||||
],
|
||||
"BasicAuthExceptionRules": [
|
||||
{
|
||||
"PathPrefix": "/public/api/"
|
||||
}
|
||||
],
|
||||
"DefaultSiteOption": 0,
|
||||
"DefaultSiteValue": "",
|
||||
"Disabled": false
|
||||
}
|
||||
```
|
||||
|
||||
Here is another example that is use for default site (previously named Proxy Root). The file must be named as `root.config`
|
||||
|
||||
```json
|
||||
{
|
||||
"ProxyType": 0,
|
||||
"RootOrMatchingDomain": "/",
|
||||
"Domain": "imuslab.com",
|
||||
"RequireTLS": true,
|
||||
"BypassGlobalTLS": false,
|
||||
"SkipCertValidations": false,
|
||||
"VirtualDirectories": null,
|
||||
"RequireBasicAuth": false,
|
||||
"BasicAuthCredentials": null,
|
||||
"BasicAuthExceptionRules": null,
|
||||
"DefaultSiteOption": 1,
|
||||
"DefaultSiteValue": "imuslab.com",
|
||||
"Disabled": false
|
||||
}
|
||||
```
|
||||
Here are some key items for the proxy config
|
||||
- ProxyType: 0 = root and 1 = host. For root, name your config file root.config
|
||||
- RootOrMatchingDomain: Matching rules or keywords, use `/` for default site router
|
||||
- Domain: Proxy target / backend
|
||||
- RequireTLS: Proxy target require TLS (https) connection
|
||||
- BypassGlobalTLS: Allow this rules to be accessed via port 80 endpoint (if enabled)
|
||||
- SkipCertValidations: Skip proxy target TLS error, for self sign certificate
|
||||
|
Loading…
x
Reference in New Issue
Block a user