Blog

Brad Wood

December 18, 2016

Spread the word


Share your thoughts

If you haven't purchased all your Christmas presents, it's time to made a mad dash for Amazon and reach for the quick shipping. If your stockings are already hung by the chimney with care then you'll have time for this next tidbit in our 12 Tips of (CommandBox) Christmas series.  One of our goals for CommandBox is for it to become a drop-in replacement for your local dev environment with the least amount of hassle and to do that you'll likely need to create some web aliases (or virtual directories as IIS calls them).  

Web Server Aliases

CommandBox allows you to create web aliases for the web server that are similar to virtual directories. The alias path is relative to the web root, but can point to any folder on the hard drive. Aliases can be used for static or CFM files.

To configure aliases for your server, edit your site's server.json file and create an object under web called alises. The keys are the web-accessible virtual paths and the corresponding values are the relative or absolute path to the folder the alias points to.

Here's what your server.json might look like.

{
  "web" : {
    "aliases" : {
      "/foo" : "../bar",
      "/js" : "C:\static\shared\javascript"
    }
  }
}

That would make yoursite.com/foo serve up the contents of the bar folder one level above the folder where your server.json file is located. while yoursite.com/js would serve up the contents of the C:\static\shared\javascript folder.

Here's how to create aliases from the server set command:

server set web.aliases./images=/path/to/images

This would make yoursite.com/images serve up the contents of your /path/to/images folder.  Obviously, relative paths are desired here as they keep your config portable and they aren't specific to any given operating system since they avoid the drive root.

Add Your Comment

Recent Entries

MatchBox and WebAssembly: Running BoxLang in the Browser and at the Edge

MatchBox and WebAssembly: Running BoxLang in the Browser and at the Edge

The MatchBox open beta is live at https://boxlang.ortusbooks.com/boxlang-framework/matchbox, and it brings something genuinely new to the BoxLang ecosystem: a path into WebAssembly.

That means BoxLang code can now move into browser applications, static-site deployments, edge runtimes, and WASI-style containers - without requiring a JVM. The feature is still beta, but the core direction is already useful: write BoxLang, compile it with MatchBox, and ship the generated WASM artifact to wherever a small portable runtime makes sense.

Jacob Beers
Jacob Beers
June 04, 2026
One Language, Every Runtime: BoxLang Expands Beyond the Server

One Language, Every Runtime: BoxLang Expands Beyond the Server

Discover how BoxLang’s multi-runtime architecture helps developers build beyond the server with support for serverless functions, desktop applications, CI/CD workflows, Java integrations, containers, runtime management, and more.

Maria Jose Herrera
Maria Jose Herrera
June 04, 2026
BoxLang 1.14.0 : BoxSet is Here: BoxLang's New First-Class Set Type

BoxLang 1.14.0 : BoxSet is Here: BoxLang's New First-Class Set Type

BoxLang 1.14.0 ships something that JVM developers have wanted for a long time: a true first-class Set type baked directly into the language. Not a wrapper you reach for manually, not a createObject( "java", "java.util.HashSet" ) incantation you paste from a Stack Overflow answer years ago. A real BoxSet with literal syntax, operator overloads, a full functional pipeline, change listeners, JSON serialization, and deep Java interop.

Luis Majano
Luis Majano
June 03, 2026