New user puzzling about project directory structure

I have just started to tryout Webstorm and am stuck at the first hurdle.  How properly to define the directory structure I am working in.

I have an existing set of files which I want to manage as a complete project (in the general sense, not a webstorm project sense). It is located at ~/dev/football.  This is also the location of the git repository for it, so there is a ~/dev/football/.git subdirectory and at the moment other things (like an Eclipse .settings directory ...).   The main files of the project are in two subdirectories under that  ~/dev/football/app is the root of the web application that this project is all about. and ~/dev/football/supporting contains supporting files (such as design documentation, etc etc) which I want to keep in the repository, but does not want to be in any web space.

With appropriate aliasing. the app directory is mapped to the url http://apps.home/football - and the web document root is off someplace else.. (as it happens ~/dev/test-base/ but I don't think that is relevant)

Now this is where I start to get confused with what appears to be various terms.

Project Root - I think this should be ~/dev/football - my rationale for this point is that its where the git repository root is.

Content Root - I think this should be ~/dev/football/app - my rationale, this is the part of the application that I want all the various project files to be cross linked.

I am wondering if I should be using an "in-place" server, even though the following (copied from the help)

  • An in-place server is a server whose document root is the parent of the project root, either immediate or not.                    In other words, the Web server is running on your  computer, your project is under its document root, and you do your  development directly on the server.


is not true. - firstly, because of the aliasing, the server document root location has nothing to do with any file paths in my project.  Secondly, isn't the important place the content root - not the project root.  The content root has to be mapped into the url space of the server.


So my questions are

1) Am I correct about my assumptions on Project Root and Content Root, or is there some other concept that I have missed.?
2) Have I totally misunderstood web server configuration - why does the help say that document root must be a parent of project root?

Please sign in to leave a comment.