I was wondering if it is easy to run a bash script or 5 to do the following
prompt for the domain the site will be using
make a home directory for the site under /home
then make a directory tree /home/site/www
create a vhost with apache vhost to point the site to the www folder
i guess a database can handle the site assets with MySQL tables?
adding sites to LAMP
Moderator: General Moderators
Re: adding sites to LAMP
Scripts don't normally "prompt" for anything (besides passwords). Pass the username/site as an argument.
If you're creating directories under /home then that suggests there are user accounts to go with it. Either create user accounts on the system or put the sites somewhere else.
Creating accounts would be safest as then the files can be owned by that user; make sure you chown the /home/site directory to match.
For the virtualhost, create a template file with tokens like $USERNAME or something. Then run the file through sed with appropriate replacements and save the output as a new configuration file. And restart/reload Apache.
If you're creating directories under /home then that suggests there are user accounts to go with it. Either create user accounts on the system or put the sites somewhere else.
Creating accounts would be safest as then the files can be owned by that user; make sure you chown the /home/site directory to match.
For the virtualhost, create a template file with tokens like $USERNAME or something. Then run the file through sed with appropriate replacements and save the output as a new configuration file. And restart/reload Apache.
Re: adding sites to LAMP
I was figuring /home/user would make it easier to jail the user to their home folder for security etc
Re: adding sites to LAMP
Putting them in one place like that is fine. What I'm saying is that /home specifically has a special meaning and is generally reserved for users of the system itself; if I saw a path "/home/site" then I would expect there to be a user named "site" to go with it. So my recommendation is to either (a) go ahead and have them in /home but create actual user accounts for them too, or (b) put the sites somewhere else.
The first option needs system privileges because you'll be creating users and groups. That's a bit annoying, but it has a great upside that all the files under /home/foo will be owned by the foo:foo user and group - you get Linux's filesystem permission system for added security.
The first option needs system privileges because you'll be creating users and groups. That's a bit annoying, but it has a great upside that all the files under /home/foo will be owned by the foo:foo user and group - you get Linux's filesystem permission system for added security.
Re: adding sites to LAMP
is there a web host package maybe that could be leveraged to make by VM look like another .COM
Re: adding sites to LAMP
I don't know what you mean.
Re: adding sites to LAMP
There is an easy way to have dynamically configured named based virtual hosts:
https://httpd.apache.org/docs/2.4/vhosts/mass.html
https://httpd.apache.org/docs/2.4/vhosts/mass.html
There are 10 types of people in this world, those who understand binary and those who don't
Re: adding sites to LAMP
VirtualDocumentRoot "/home/%2/www"
is more or less the idea I am looking at, so that way i can manage the client sites using linux home folders for each site etc
the vhost can then be very simple for each site
is more or less the idea I am looking at, so that way i can manage the client sites using linux home folders for each site etc
the vhost can then be very simple for each site