Use virtual host in Apache

来源:互联网 发布:sound软件 编辑:程序博客网 时间:2024/06/05 02:48

Resume

This passage will show you how to add a virtual host with Apache on Ubuntu.

yoursite.local.conf

First of all, cd to /etc/apache2/sites-available/ then copy the 000-default.conf file and rename to yoursite.local.conf.

Then use sudo nano yoursite.local.conf to edit your config file.

In the file, just add

ServerAdmin webmaster@localhostDocumentRoot /var/www/yoursiteServerName yoursite.localServerAlias yoursite.local

After have modified the yoursite.local.conf file, it should be something like this:
The config file will be something like this

<VirtualHost yoursite.local:80>        # The ServerName directive sets the request scheme, hostname and port that        # the server uses to identify itself. This is used when creating        # redirection URLs. In the context of virtual hosts, the ServerName        # specifies what hostname must appear in the request's Host: header to        # match this virtual host. For the default virtual host (this file) this        # value is not decisive as it is used as a last resort host regardless.        # However, you must set it for any further virtual host explicitly.        #ServerName www.example.com        ServerAdmin webmaster@localhost        DocumentRoot /var/www/yoursite        ServerName yoursite.local        ServerAlias yoursite.local        # Available loglevels: trace8, ..., trace1, debug, info, notice, warn,        # error, crit, alert, emerg.        # It is also possible to configure the loglevel for particular        # modules, e.g.        #LogLevel info ssl:warn        ErrorLog ${APACHE_LOG_DIR}/error.log        CustomLog ${APACHE_LOG_DIR}/access.log combined        # For most configuration files from conf-available/, which are        # enabled or disabled at a global level, it is possible to        # include a line for only one particular virtual host. For example the        # following line enables the CGI configuration for this host only        # after it has been globally disabled with "a2disconf".        #Include conf-available/serve-cgi-bin.conf</VirtualHost>

Then modify the first line to <VirtualHost yoursite.local:80>.
It allows Apache to listen to the 80 port for yoursite.local.

Then, use sudo nano 000-default.conf to modify the default virtual host file.
The only thing we should do is that we change <VirtualHost *:80> to <VirtualHost localhost:80>. So that it will only listen for localhost but not every site.

Enable the virtual host

After that, type sudo a2ensite yoursite.local.conf to enable the virtual host for your site.

Add your site to host file

use sudo nano /etc/hosts to edit host file. Add 127.0.0.1 yoursite.local to the end of file so that you can redirect yoursite.local to 127.0.0.1.

Restart Apache

Type sudo service apache2 restart to restart the Apache server.
After doing that, you should be able to type yoursite.local in the browser to browse files in /var/www/yoursite.

Change file rights

If you have the following error,

Fatal error: filecache_directory is not configured correctly. Please read /var/www/html/souvenirfrancais/lazarus-api/drupal/sites/all/modules/contrib/filecache/README.txt.Hint: <em class="placeholder">/var/www/html/souvenirfrancais/lazarus-api/drupal/sites/default/files/.ht.filecache</em> is directory but PHP cannot write to it.

you should type sudo chown -R www-data:www-data yousite/ to change the owner.

1 0