Rewrite Url Rule Args
Provides a ESA Rewrite Url Rule resource. For information about ESA Rewrite Url Rule and how to use it, see What is Rewrite Url Rule.
NOTE: Available since v1.243.0.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "terraform-example";
const resourceRewriteUrlRuleRatePlanInstanceExample = new alicloud.esa.RatePlanInstance("resource_RewriteUrlRule_RatePlanInstance_example", {
type: "NS",
autoRenew: false,
period: 1,
paymentType: "Subscription",
coverage: "overseas",
autoPay: true,
planName: "high",
});
const resourceRewriteUrlRuleSiteExample = new alicloud.esa.Site("resource_RewriteUrlRule_Site_example", {
siteName: "gositecdn.cn",
instanceId: resourceRewriteUrlRuleRatePlanInstanceExample.id,
coverage: "overseas",
accessType: "NS",
});
const _default = new alicloud.esa.RewriteUrlRule("default", {
rewriteUriType: "static",
rewriteQueryStringType: "static",
siteId: resourceRewriteUrlRuleSiteExample.id,
ruleName: "example",
ruleEnable: "on",
queryString: "example=123",
siteVersion: 0,
rule: "http.host eq \"video.example.com\"",
uri: "/image/example.jpg",
});
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform-example"
resource_rewrite_url_rule_rate_plan_instance_example = alicloud.esa.RatePlanInstance("resource_RewriteUrlRule_RatePlanInstance_example",
type="NS",
auto_renew=False,
period=1,
payment_type="Subscription",
coverage="overseas",
auto_pay=True,
plan_name="high")
resource_rewrite_url_rule_site_example = alicloud.esa.Site("resource_RewriteUrlRule_Site_example",
site_name="gositecdn.cn",
instance_id=resource_rewrite_url_rule_rate_plan_instance_example.id,
coverage="overseas",
access_type="NS")
default = alicloud.esa.RewriteUrlRule("default",
rewrite_uri_type="static",
rewrite_query_string_type="static",
site_id=resource_rewrite_url_rule_site_example.id,
rule_name="example",
rule_enable="on",
query_string="example=123",
site_version=0,
rule="http.host eq \"video.example.com\"",
uri="/image/example.jpg")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform-example";
var resourceRewriteUrlRuleRatePlanInstanceExample = new AliCloud.Esa.RatePlanInstance("resource_RewriteUrlRule_RatePlanInstance_example", new()
{
Type = "NS",
AutoRenew = false,
Period = 1,
PaymentType = "Subscription",
Coverage = "overseas",
AutoPay = true,
PlanName = "high",
});
var resourceRewriteUrlRuleSiteExample = new AliCloud.Esa.Site("resource_RewriteUrlRule_Site_example", new()
{
SiteName = "gositecdn.cn",
InstanceId = resourceRewriteUrlRuleRatePlanInstanceExample.Id,
Coverage = "overseas",
AccessType = "NS",
});
var @default = new AliCloud.Esa.RewriteUrlRule("default", new()
{
RewriteUriType = "static",
RewriteQueryStringType = "static",
SiteId = resourceRewriteUrlRuleSiteExample.Id,
RuleName = "example",
RuleEnable = "on",
QueryString = "example=123",
SiteVersion = 0,
Rule = "http.host eq \"video.example.com\"",
Uri = "/image/example.jpg",
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/esa"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
cfg := config.New(ctx, "")
name := "terraform-example"
if param := cfg.Get("name"); param != "" {
name = param
}
resourceRewriteUrlRuleRatePlanInstanceExample, err := esa.NewRatePlanInstance(ctx, "resource_RewriteUrlRule_RatePlanInstance_example", &esa.RatePlanInstanceArgs{
Type: pulumi.String("NS"),
AutoRenew: pulumi.Bool(false),
Period: pulumi.Int(1),
PaymentType: pulumi.String("Subscription"),
Coverage: pulumi.String("overseas"),
AutoPay: pulumi.Bool(true),
PlanName: pulumi.String("high"),
})
if err != nil {
return err
}
resourceRewriteUrlRuleSiteExample, err := esa.NewSite(ctx, "resource_RewriteUrlRule_Site_example", &esa.SiteArgs{
SiteName: pulumi.String("gositecdn.cn"),
InstanceId: resourceRewriteUrlRuleRatePlanInstanceExample.ID(),
Coverage: pulumi.String("overseas"),
AccessType: pulumi.String("NS"),
})
if err != nil {
return err
}
_, err = esa.NewRewriteUrlRule(ctx, "default", &esa.RewriteUrlRuleArgs{
RewriteUriType: pulumi.String("static"),
RewriteQueryStringType: pulumi.String("static"),
SiteId: resourceRewriteUrlRuleSiteExample.ID(),
RuleName: pulumi.String("example"),
RuleEnable: pulumi.String("on"),
QueryString: pulumi.String("example=123"),
SiteVersion: pulumi.Int(0),
Rule: pulumi.String("http.host eq \"video.example.com\""),
Uri: pulumi.String("/image/example.jpg"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.esa.RatePlanInstance;
import com.pulumi.alicloud.esa.RatePlanInstanceArgs;
import com.pulumi.alicloud.esa.Site;
import com.pulumi.alicloud.esa.SiteArgs;
import com.pulumi.alicloud.esa.RewriteUrlRule;
import com.pulumi.alicloud.esa.RewriteUrlRuleArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var config = ctx.config();
final var name = config.get("name").orElse("terraform-example");
var resourceRewriteUrlRuleRatePlanInstanceExample = new RatePlanInstance("resourceRewriteUrlRuleRatePlanInstanceExample", RatePlanInstanceArgs.builder()
.type("NS")
.autoRenew("false")
.period("1")
.paymentType("Subscription")
.coverage("overseas")
.autoPay("true")
.planName("high")
.build());
var resourceRewriteUrlRuleSiteExample = new Site("resourceRewriteUrlRuleSiteExample", SiteArgs.builder()
.siteName("gositecdn.cn")
.instanceId(resourceRewriteUrlRuleRatePlanInstanceExample.id())
.coverage("overseas")
.accessType("NS")
.build());
var default_ = new RewriteUrlRule("default", RewriteUrlRuleArgs.builder()
.rewriteUriType("static")
.rewriteQueryStringType("static")
.siteId(resourceRewriteUrlRuleSiteExample.id())
.ruleName("example")
.ruleEnable("on")
.queryString("example=123")
.siteVersion("0")
.rule("http.host eq \"video.example.com\"")
.uri("/image/example.jpg")
.build());
}
}
configuration:
name:
type: string
default: terraform-example
resources:
resourceRewriteUrlRuleRatePlanInstanceExample:
type: alicloud:esa:RatePlanInstance
name: resource_RewriteUrlRule_RatePlanInstance_example
properties:
type: NS
autoRenew: 'false'
period: '1'
paymentType: Subscription
coverage: overseas
autoPay: 'true'
planName: high
resourceRewriteUrlRuleSiteExample:
type: alicloud:esa:Site
name: resource_RewriteUrlRule_Site_example
properties:
siteName: gositecdn.cn
instanceId: ${resourceRewriteUrlRuleRatePlanInstanceExample.id}
coverage: overseas
accessType: NS
default:
type: alicloud:esa:RewriteUrlRule
properties:
rewriteUriType: static
rewriteQueryStringType: static
siteId: ${resourceRewriteUrlRuleSiteExample.id}
ruleName: example
ruleEnable: on
queryString: example=123
siteVersion: '0'
rule: http.host eq "video.example.com"
uri: /image/example.jpg
Import
ESA Rewrite Url Rule can be imported using the id, e.g.
$ pulumi import alicloud:esa/rewriteUrlRule:RewriteUrlRule example <site_id>:<config_id>
Constructors
Properties
The desired query string to which you want to rewrite the query string in the original request.
Query string rewrite type. Value range:
URI rewrite type. Value range:
Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios: ● Match all incoming requests: value set to true ● Match specified request: Set the value to a custom expression, for example: (http.host eq \"video.example.com\")
Indicates whether the rule is enabled. Valid values:
Version number of the site configuration. For a site with configuration version management enabled, you can use this parameter to specify the site version in which the configuration takes effect. The default version is 0.