Installing and configuring a fresh Ubuntu 14.04 server to host multiple Drupal websites
Here is the procedure that I normally follow for installing and configuring a fresh Ubuntu 14.04 server to host multiple Drupal websites:
Login as root, and run the following commands:
apt-get update apt-get upgrade apt-get autoremove shutdown -r now
Add a new user to host the Drupal websites:
adduser USERNAME
Grant sudo permissions.:
sudo usermod -a -G sudo USERNAME
Then login as that user, and run the rest of the steps listed below.
Install latest git from official PPA:
sudo apt-get remove git git-core git-man sudo add-apt-repository ppa:git-core/ppa sudo apt-get update sudo apt-get install git-core
Configuring Git
git config --global color.ui true git config --global user.name "Drupal Admin" git config --global user.email "drupaladmin@domainname.com"
Then install PHP5 support for Apache:
sudo apt-get install php5
Configure Apache for Drupal:
sudo a2enmod rewrite sudo a2enmod userdir sudo service apache2 restart sudo mkdir -p /etc/skel/public_html sudo mkdir -p /etc/skel/logs mkdir ~/public_html mkdir ~/logs
sudo apt-get install dbconfig-common libaio1 libdbd-mysql-perl libdbi-perl \ libhtml-template-perl libmysqlclient18 libterm-readkey-perl mysql-client \ mysql-client-5.5 mysql-client-core-5.5 mysql-common mysql-server \ mysql-server-5.5 mysql-server-core-5.5 php5-gd php5-mysql postfix \ wwwconfig-common phpmyadmin
Give it the following inputs when it asks for these:
MySQL root password: somestrongpassword
Postfix Configuration: Internet Site
Postfix Configuration - System mail name: domainname.com
To install PECL uploadprogress:
sudo apt-get install php-pear sudo apt-get install build-essential php5-dev sudo pecl install uploadprogress
sudo sh -c 'echo "; activate and configurate for php uploadprogress module" >>/etc/php5/mods-available/uploadprogress.ini' sudo sh -c 'echo "extension=uploadprogress.so" >> /etc/php5/mods-available/uploadprogress.ini' sudo ln -s /etc/php5/mods-available/uploadprogress.ini /etc/php5/apache2/conf.d/20-uploadprogress.ini sudo service apache2 restart
To fix the error "apache2: Could not reliably determine the server's fully qualified domain name, using..."
... that shows up when restarting apache, do the following:
echo "ServerName DOMAINNAME.COM" | sudo tee /etc/apache2/conf-available/fqdn.conf sudo a2enconf fqdn sudo service apache2 restart
Enable PHP in user directories (such as ~/public_html):
Run the following command to open up the corresponding config file for editing:
sudo vim /etc/apache2/mods-available/php5.conf
and comment out the following lines by adding a hash symbol '#' to the start of each line:
<IfModule mod_userdir.c> <Directory /home/*/public_html> php_admin_flag engine Off </Directory> </IfModule>
such that the lines now look as follows:
#<IfModule mod_userdir.c> # <Directory /home/*/public_html> # php_admin_flag engine Off # </Directory> #</IfModule>
Allow .htaccess files to override any apache server option under ~/public_html:
Open up the file for editing:
sudo vim /etc/apache2/mods-available/userdir.conf
and change the line that says:
AllowOverride FileInfo AuthConfig Limit Indexes
to
AllowOverride All
Save and exit.
Restart apache:
sudo service apache2 restart
Install Drush
First install Composer globally:
mkdir -p /tmp/composer/install cd /tmp/composer/install curl -sS https://getcomposer.org/installer | php sudo mv composer.phar /usr/local/bin/composer sudo ln -s /usr/local/bin/composer /usr/bin/composer
then install Drush with it:
sudo git clone https://github.com/drush-ops/drush.git /usr/local/src/drush cd /usr/local/src/drush sudo ln -s /usr/local/src/drush/drush /usr/bin/drush sudo composer install sudo composer update drush --version
To add a new Drupal website to host, do the following:
Add apache virtualhost config file.
Add entries to /etc/hosts.
- 13076 reads
Add new comment