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

CMS5: Document Enforce public webroot dir in 5.x onwards #8168

Closed
4 of 5 tasks
tractorcow opened this issue Jun 12, 2018 · 6 comments
Closed
4 of 5 tasks

CMS5: Document Enforce public webroot dir in 5.x onwards #8168

tractorcow opened this issue Jun 12, 2018 · 6 comments

Comments

@tractorcow
Copy link
Contributor

tractorcow commented Jun 12, 2018

Affected Version

5.x

Description

From 4.1 and onwards it was possible to have a 'public' webroot directory. (see #7419) This addition required a check to various parts of the framework to conditionally behave differently depending on whether this folder is present. From 5.x we may want to enforce the presence of this folder and set a fixed directory structure.

Related: silverstripe/recipe-core#25

Acceptance criteria

  • Recipes are updated to remove the htaccess config for the project root
  • Recipe plugin is updated to always copy public web root file to the web root folder
  • PUBLIC_PATH constant always points to public folder and any other logic design to allow the project root to be the public root is removed.
  • This changes is called out in the upgrade doc.
  • Remove any reference to configuring public root from the doc

PRs

@DorsetDigital
Copy link
Contributor

How would this work if SilverStripe was installed in a subdirectory?

@kinglozzer
Copy link
Member

@DorsetDigital you should just be able to rewrite everything into the public directory still: https://github.com/silverstripe/silverstripe-installer/blob/4/.htaccess

@emteknetnz
Copy link
Member

I'm pretty sure this will break our somewhat strange way of running endtoend tests in CI where we essentially git clone the repo, then run composer update, then somehow the site works in a browser. We'd need to change everything to probably run composer create-project silverstripe/installer and then mv the clone repo to the vendor folder, then run composer vendor-expose. Something along those lines

@GuySartorelli
Copy link
Member

GuySartorelli commented Aug 3, 2022

Note that this will at the very least need PRs in the following repos:

  • silverstripe/vendor-plugin
  • silverstripe/silverstripe-framework
  • silverstripe/developer-docs (upgrade notes, "Requirements" docs, etc)

@emteknetnz
Copy link
Member

@GuySartorelli linked PR has been merged - your last comment from August suggested this required more PRs - do we still need to do those or not?

@GuySartorelli
Copy link
Member

Nope, that was for the actual code changes which ended up being done as a separate card.
PR merged, closing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants