2a79ae0a6e
Fully normalizes the baseUrl behaviour to better match how this sort of feature works in other programs. 1. The baseUrl is always appended to paths, even the built-in `/emby` and `/mediabrowser` paths. 2. The baseUrl is set statically at class instance creation, to ensure it persists through changes until the next restart. 3. Configuration is normalized using a function when set, to ensure it's in a standard `/mypath` format with leading `/`. 4. Cleans up the conditionals around default redirects. For sanity after changing the URL, it will match *any* path that doesn't match the current baseUrl and redirect it back to the main page (with baseUrl). 5. Adds a second method, NormalizeUrlPath, to avoid lots of `+ "/" +` string manipulations which are unclean - we should always have a leading slash. 6. Sets the default baseUrl to an empty string to avoid unexpected behaviour, though this would be worked-around automatically. 7. Adds some debug logs whenever a URL is normalized, to help track down issues with this code (if any arise). |
||
---|---|---|
.. | ||
Activity | ||
AppBase | ||
Archiving | ||
Branding | ||
Browser | ||
Channels | ||
Collections | ||
Configuration | ||
Cryptography | ||
Data | ||
Devices | ||
Diagnostics | ||
Dto | ||
EntryPoints | ||
HttpClientManager | ||
HttpServer | ||
Images | ||
IO | ||
Library | ||
LiveTv | ||
Localization | ||
MediaEncoder | ||
Middleware | ||
Net | ||
Networking | ||
Playlists | ||
Properties | ||
ScheduledTasks | ||
Security | ||
Serialization | ||
Services | ||
Session | ||
SocketSharp | ||
Sorting | ||
TV | ||
Udp | ||
Updates | ||
UserViews | ||
WebSockets | ||
ApplicationHost.cs | ||
ConfigurationOptions.cs | ||
Emby.Server.Implementations.csproj | ||
IStartupOptions.cs | ||
ResourceFileManager.cs | ||
ServerApplicationPaths.cs |