J'essaie de créer un site appelé SITB à Ubuntu avec Apach2. Je crée un fichier HTML et l'enregistré dans un dossier de SiteB créé dans Var/www, mais lorsque je charge le site, il est juste de dire interdit, vous n'avez pas la permission d'accéder à cette ressource. Je ne sais pas pourquoi je reçois cela parce que je fixe les autorisations à 755 pour Siteb
Voici mon fichier /etc/apache2/apache2.conf
# This is the main Apache server configuration file. It contains the
# configuration directives that give the server its instructions.
# See http://httpd.Apache.org/docs/2.4/ for detailed information about
# the directives and /usr/share/doc/Apache2/README.Debian about Debian specific
# hints.
#
#
# Summary of how the Apache 2 configuration works in Debian:
# The Apache 2 web server configuration in Debian is quite different to
# upstream's suggested way to configure the web server. This is because Debian's
# default Apache2 installation attempts to make adding and removing modules,
# virtual hosts, and extra configuration directives as flexible as possible, in
# order to make automating the changes and administering the server as easy as
# possible.
# It is split into several files forming the configuration hierarchy outlined
# below, all located in the /etc/Apache2/ directory:
#
# /etc/Apache2/
# |-- Apache2.conf
# | `-- ports.conf
# |-- mods-enabled
# | |-- *.load
# | `-- *.conf
# |-- conf-enabled
# | `-- *.conf
# `-- sites-enabled
# `-- *.conf
#
#
# * Apache2.conf is the main configuration file (this file). It puts the pieces
# together by including all remaining configuration files when starting up the
# web server.
#
# * ports.conf is always included from the main configuration file. It is
# supposed to determine listening ports for incoming connections which can be
# customized anytime.
#
# * Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
# directories contain particular configuration snippets which manage modules,
# global configuration fragments, or virtual Host configurations,
# respectively.
#
# They are activated by symlinking available configuration files from their
# respective *-available/ counterparts. These should be managed by using our
# helpers a2enmod/a2dismod, a2ensite/a2dissite and a2enconf/a2disconf. See
# their respective man pages for detailed information.
#
# * The binary is called Apache2. Due to the use of environment variables, in
# the default configuration, Apache2 needs to be started/stopped with
# /etc/init.d/Apache2 or Apache2ctl. Calling /usr/bin/Apache2 directly will not
# work with the default configuration.
# Global configuration
#
#
# ServerRoot: The top of the directory tree under which the server's
# configuration, error, and log files are kept.
#
# NOTE! If you intend to place this on an NFS (or otherwise network)
# mounted filesystem then please read the Mutex documentation (available
# at <URL:http://httpd.Apache.org/docs/2.4/mod/core.html#mutex>);
# you will save yourself a lot of trouble.
#
# Do NOT add a slash at the end of the directory path.
#
#ServerRoot "/etc/Apache2"
#
# The accept serialization lock file MUST BE STORED ON A LOCAL DISK.
#
#Mutex file:${Apache_LOCK_DIR} default
#
# The directory where shm and other runtime files will be stored.
#
DefaultRuntimeDir ${Apache_RUN_DIR}
#
# PidFile: The file in which the server should record its process
# identification number when it starts.
# This needs to be set in /etc/Apache2/envvars
#
PidFile ${Apache_PID_FILE}
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 300
#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5
# These need to be set in /etc/Apache2/envvars
User ${Apache_RUN_USER}
Group ${Apache_RUN_GROUP}
#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.Apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off
# ErrorLog: The location of the error log file.
# If you do not specify an ErrorLog directive within a <VirtualHost>
# container, error messages relating to that virtual Host will be
# logged here. If you *do* define an error logfile for a <VirtualHost>
# container, that Host's errors will be logged there and not here.
#
ErrorLog ${Apache_LOG_DIR}/error.log
#
# LogLevel: Control the severity of messages logged to the error_log.
# Available values: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the log level for particular modules, e.g.
# "LogLevel info ssl:warn"
#
LogLevel warn
# Include module configuration:
IncludeOptional mods-enabled/*.load
IncludeOptional mods-enabled/*.conf
# Include list of ports to listen on
Include ports.conf
# Sets the default security model of the Apache2 HTTPD server. It does
# not allow access to the root filesystem outside of /usr/share and /var/www.
# The former is used by web applications packaged in Debian,
# the latter may be used for local directories served by the web server. If
# your system is serving content from a sub-directory in /srv you must allow
# access here, or in any related virtual Host.
<Directory />
Options FollowSymLinks
AllowOverride None
Require all denied
</Directory>
<Directory /usr/share>
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/default>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<Directory /var/www/siteb>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>
#<Directory /srv/>
# Options Indexes FollowSymLinks
# AllowOverride None
# Require all granted
#</Directory>
# AccessFileName: The name of the file to look for in each directory
# for additional configuration directives. See also the AllowOverride
# directive.
#
AccessFileName .htaccess
#
# The following lines prevent .htaccess and .htpasswd files from being
# viewed by Web clients.
#
<FilesMatch "^\.ht">
Require all denied
</FilesMatch>
#
# The following directives define some format nicknames for use with
# a CustomLog directive.
#
# These deviate from the Common Log Format definitions in that they use %O
# (the actual bytes sent including headers) instead of %b (the size of the
# requested file), because the latter makes it impossible to detect partial
# requests.
#
# Note that the use of %{X-Forwarded-For}i instead of %h is not recommended.
# Use mod_remoteip instead.
#
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
# Include of directories ignores editors' and dpkg's backup files,
# see README.Debian for details.
# Include generic snippets of statements
IncludeOptional conf-enabled/*.conf
# Include the virtual Host configurations:
IncludeOptional sites-enabled/*.conf
# vim: syntax=Apache ts=4 sw=4 sts=4 sr noet
Vous ne regardez pas au bon endroit, bien que le fichier /etc/apache2/apache2.conf vous avez collé vous donne quelques grandes indices.
Vous n'avez pas non plus fourni aucune information sur ce que le nom d'hôte est ou si vous placez le "fichier HTML".
Ubuntu utilise la manière de Debian de configuration Apache2, de sorte que les fichiers de configuration de vos "hôtes virtuels" seront dans/etc/apache2/sites-disponibles /
Jetez un coup d'œil à l'intérieur de ce répertoire et vous devriez être un fichier appelé quelque chose comme 000 -faulet.conf. Jetez un coup d'oeil.
cd /etc/Apache2/sites-available/
ls -la
cat 000-default.conf
Vous pouvez éditer ce fichier par défaut ou créer un nouveau pour votre domaine. En supposant que vous souhaitez créer une nouvelle configuration d'hôte virtuelle pour le domaine exemple.com , vous devez procéder comme suit. Swap Out Exemple.com pour le nom de votre domaine.
cd /etc/Apache2/sites-available/
Sudo cp 000-default.conf example.com.conf
Sudo mkdir /var/www/example.com
Sudo mkdir /var/www/example.com/public_html
Sudo echo '<h1>This is the index file of example.com' > /var/www/example.com/public_html/index.html
Sudo chown -R 775 /var/www/example.com/
Vous avez maintenant un fichier de configuration appelé /etc/apache2/sites-Available/example.com.conf, une racine Web au /var/www/example.com/public_html et un fichier index.html dans la racine Web.
Ensuite, vous devez modifier le fichier de configuration de votre nom de domaine (rappelez-vous exemple Swap Exemple.com pour votre nom de domaine:
Sudo nano /etc/Apache2/sites-available/example.com.conf
Le fichier doit finir par écrire comme ceci:
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog ${Apache_LOG_DIR}/error.log
CustomLog ${Apache_LOG_DIR}/access.log combined
</VirtualHost>
Une fois que vous avez modifié le fichier de configuration, vous devez activer l'hôte virtuel. Cela implique de créer un lien symbolique vers votre fichier de configuration dans/etc/apache2/Sites activé /. Apache2 a une aide pour faire ceci:
Sudo a2ensite example.com.conf
Vous pouvez également désactiver la configuration de 000-par défaut si vous voulez:
Sudo a2dissite 000-default.conf
Maintenant, la préparation est terminée, vous devez redémarrer Apache pour que les modifications prennent effet:
Sudo service Apache2 restart
Il existe des tonnes de documentation sur le Web sur la configuration Apache sur Ubuntu, demandez à Google. Ou peut-être jetez un coup d'œil à ce document qui est assez facile en lecture: https://www.digitalocean.com/community/tatudials/how-to-set-up-apache-virtual-hosts-on-ubuntu -16-04