Home >Operation and Maintenance >Apache >Where is the apache configuration file under linux?

Where is the apache configuration file under linux?

藏色散人
藏色散人Original
2019-07-03 11:25:0110615browse

Where is the apache configuration file under linux?

The configuration file of Apache under Linux is /etc/apache2/apache2.conf. Apache will automatically read the configuration information of this file when it starts. Some other configuration files, such as httpd.conf, etc., are included through the Include directive.

There is a sites-enabled directory in apache2.conf, and there is a sites-available directory under /etc/apache2. In fact, this is the real configuration file, and the sites-enabled directory stores Just some symbolic links pointing to files here, you can verify this with ls /etc/apache2/sites-enabled/.

So, if multiple virtual hosts are configured on apache, and the configuration file of each virtual host is placed under sites-available, then it is very convenient to deactivate and enable the virtual host: when in sites When a link to a virtual host configuration file is established under -enabled, it is enabled; if you want to turn off a virtual host, you only need to delete the corresponding link, and there is no need to change the configuration file at all.

sudo cp /etc/apache2/sites-avaliable/000-default.conf , 命名为 test.conf

2. Modify the configuration file: test.conf

<VirtualHost *: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&#39;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.test.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/test/
ErrorLog /var/www/html/test/error.log
CustomLog /var/www/html/test/access.log combined
<Directory "/var/www/html/test">
    Options FollowSymLinks
    DirectoryIndex index.php index.html index.htm
    AllowOverride All #注意这个地方的配置,会影响本地目录下的.htaccess的启用
    Order deny,allow
    Allow from All
</Directory>
# 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
# 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>

Create a link file:

sudo ln -s /etc/apache2/sites-available/test.conf /etc/apache2/sites-enabled/test.conf

Or: sudo a2ensite test.conf

4. Restart apache server

sudo /etc/init.d/apache2 restart

Modify hosts(/etc/hosts)

// 增加一行
127.0.0.1 www.test.com

You can basically access it normally here!

Attachment: If you still need directory-level URL rewriting support, continue below:

Terminal operation

sudo a2enmod

The program prompts for the module name available for activation, enter :rewrite

Success will prompt

rewrite already load

Modify /etc/apache2/sites-enabled/test.conf (this link points to the site configuration file)

Put the following Change the AllowOverride property to All and save. (We have configured it to All above)

Reload apache

sudo /etc/init.d/apache2 restart

For more Apache related knowledge, please visit the Apache usage tutorial column!

The above is the detailed content of Where is the apache configuration file under linux?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn