|
|
| Line 1: |
Line 1: |
| =Virtual Domain Setup=
| | {{to wooz|setups/vdomain}} |
| This is how I typically set up virtual domains.
| |
| ===Definitions===
| |
| * {{arg|$HOME}} is the home folder of the virtual domain's user account
| |
| ** e.g. <code>/home/wvbz/</code>
| |
| * {{arg|$USER}} is the system user that Apache will run as
| |
| ** e.g. <code>wvbz</code>
| |
| * {{arg|$WEB}} is the base folder of files that will be served to the web
| |
| ** Typically <code>{{arg|$HOME}}/public_html</code>
| |
| ** e.g. <code>/home/wvbz/public_html</code>
| |
| ===File Structure===
| |
| * <code>{{arg|$HOME}}</code> - domain user's home folder
| |
| ** <code>/site</code> - all site-specific stuff
| |
| *** <code>/config</code> - any configuration stuff that might change
| |
| **** there's a folder for each project that has configurable files, typically in lowercase
| |
| ***** e.g. <code>{{arg|$HOME}}/site/config/vbzcart</code>
| |
| *** <code>/git</code> - [[Git]] repositories being used for this domain/project
| |
| **** Repositories are directly under this, e.g. </code>{{arg|$HOME}}/site/git/ferreteria</code>.
| |
| **** Nothing in this folder should be edited, unless doing development on the repository itself.
| |
| *** <code>/apps</code> for applications (e.g. MediaWiki) whose code is delivered via some method other than [[git clone]]
| |
| **** A lot of web apps mix together site-config files and read-only code files, so this folder may need to be writeable.
| |
| ** <code>/public_html</code> is {{arg|$WEB}}, i.e. files to be served on the web
| |
| *** Personally I'd prefer <code>/web</code> or <code>/www</code>, but this ↑ is [[VirtualMin]]'s default
| |
| | |
| Wherever possible, I will make links inside {{arg|$WEB}} to files/folders in <code>{{arg|$HOME}}/site</code> rather than copying them, in order to minimize scattering of edit-targets and simplify updates a bit.
| |