Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate to ZendFramework to Symfony #66

Draft
wants to merge 174 commits into
base: master
Choose a base branch
from
Draft

Migrate to ZendFramework to Symfony #66

wants to merge 174 commits into from

Conversation

adamfranco
Copy link
Member

Fixes #47.

@adamfranco adamfranco self-assigned this Sep 26, 2024
The use of '/' as a separator in subcomponents turned out to be a bad idea
because these slashes need to be escaped as %2F, but these escaped slashes
can interfere with some webserver configuration.

For example Apache redirects require the NE "No Escape" option to preserve
%2F slashes without double-escaping:

    # Redirect all traffic to https
    #
    # We're using mod_rewrite here rather than mod_alias's `Redirect`
    # because mod_alias doesn't allow the "NE" == "noescape" parameter
    # that allows URLs includinging encoded slashes (%2F) to be returned
    # without double-escaping.
    RewriteRule .* https://<%= node["app_domain"] %>$0 [L,R=301,NE]

Similarly, Symfony refuses to allow slashes in parameters passed as tokens
in routes.

To address this problematic choice, use '.' as a separator of
sub-components in identifiers. Periods don't require special escaping in
URLs or database queries, though they do in regular expressions.
This uses an encoded JSON array to pass from shell, to YAML.
In the old version of the catalog we had a list of adminstrator ids in a
configuration file to provide access to management features. Instead,
shift that assignment off to Azure AD to make it easier to review and
modify via the AzureAD admin tools.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Upgrade from ZendFramework 1
1 participant