Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Serveurs (Apache, IIS,...) > Apache
Apache Forum d'entraide Apache. Avant de poster : Cours Apache, FAQ Apache
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/02/2012, 22h41   #1
Invité de passage
 
Inscription : septembre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 11
Points : 3
Points : 3
Par défaut Apache, contre le copyright

Bonjour à tous !

Je suis devant un grand mystère, plutôt amusant.
Sur une page web, dont toutes les images sont dans la même répertoire, une ne s'affiche pas. Je regarde un peu, et Apache me renvoie une erreur 403 forbidden quand je veux afficher l'image en question.

Bizarre, je vais voir la liste des images, il s'agit d'une image contenant le mot "copyright" dans son nom. Après quelques tests, il s'avère que c'est tous les fichiers contenant le mot "copyright" qui sont bloqués (forbidden) : même répertoire, même droits, même utilisateur.

Dans l'image jointe, j'ai fait des copies du même fichier avec des noms différents et seuls "2-copy.txt" et "pomme.jpg" s'affichent.

Quelqu'un a une explication, ou j'arrête l'informatique pour me reconvertir ? x)

EDIT/PS : Bien sûr, Google n'a jamais entendu parler de ça.
Images attachées
Type de fichier : png WTF-apache.png (8,7 Ko, 3 affichages)
GhosterK est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2012, 17h46   #2
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 302
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 302
Points : 8 583
Points : 8 583
Etrange. Quelle version d'Apache ? Y a quoi dans les logs d'erreur d'Apache ?
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2012, 18h14   #3
Invité de passage
 
Inscription : septembre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 11
Points : 3
Points : 3
Bonjour,

Il s'agit de la version 2.2.15 sur CentOS6.
On retrouve ça dans les logs :

Code :
[Sun Feb 12 18:10:30 2012] [error] [client XX.XX.XX.XX] client denied by server configuration: /var/www/html/test/969ac23b.blog-120210-copyright.jpg, referer: <URL>
Et la dite configuration :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<VirtualHost domain.tld:80>
        ServerName domain.tld
        ServerAlias test.domain.tld
        
        DocumentRoot /var/www/html/test/
        <Directory /var/www/html/test>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                
                AuthName "Page d'administration protegee"
                AuthType Basic
                AuthUserFile "<fichier htpasswd>"
                Require valid-user
        </Directory>

        ErrorLog /var/log/apache/error.log
        CustomLog /var/log/apache/access.log combined
</VirtualHost>
GhosterK est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2012, 21h07   #4
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 302
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 302
Points : 8 583
Points : 8 583
Si tu désactives l'authentification ça marche ?
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/02/2012, 22h13   #5
Invité de passage
 
Inscription : septembre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 11
Points : 3
Points : 3
Je teste ça.

Non, même résultat. Ce n'est pas très grave mais c'est quand même très bizarre...
GhosterK est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 00h19   #6
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 302
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 302
Points : 8 583
Points : 8 583
Si c'est le même résultat c'est que le problème est ailleurs dans la configuration. C'est possible que tu nous la donne en entier, y compris les .htaccess ?
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 20h09   #7
Invité de passage
 
Inscription : septembre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 11
Points : 3
Points : 3
Bonsoir,

Je n'ai pas encore pris le temps de me pencher en profondeur sur la conf, mais voilà où elle en est (j'ai viré tous les commentaires Apache histoire que ça soit buvable) :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
### Section 1: Global Environment

ServerTokens Prod
ServerRoot "/etc/httpd"
PidFile run/httpd.pid
Timeout 60
KeepAlive Off
MaxKeepAliveRequests 40
KeepAliveTimeout 8

<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

<IfModule worker.c>
StartServers         4
MaxClients         300
MinSpareThreads     25
MaxSpareThreads     75 
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

Listen 80

LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_alias_module modules/mod_authn_alias.so
LoadModule authn_anon_module modules/mod_authn_anon.so
LoadModule authn_dbm_module modules/mod_authn_dbm.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_owner_module modules/mod_authz_owner.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_dbm_module modules/mod_authz_dbm.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule ldap_module modules/mod_ldap.so
LoadModule authnz_ldap_module modules/mod_authnz_ldap.so
LoadModule include_module modules/mod_include.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule logio_module modules/mod_logio.so
LoadModule env_module modules/mod_env.so
LoadModule ext_filter_module modules/mod_ext_filter.so
LoadModule mime_magic_module modules/mod_mime_magic.so
LoadModule expires_module modules/mod_expires.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule usertrack_module modules/mod_usertrack.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule mime_module modules/mod_mime.so
LoadModule dav_module modules/mod_dav.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule info_module modules/mod_info.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule dir_module modules/mod_dir.so
LoadModule actions_module modules/mod_actions.so
LoadModule speling_module modules/mod_speling.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule alias_module modules/mod_alias.so
LoadModule substitute_module modules/mod_substitute.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule cache_module modules/mod_cache.so
LoadModule suexec_module modules/mod_suexec.so
LoadModule disk_cache_module modules/mod_disk_cache.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule version_module modules/mod_version.so

Include conf.d/*.conf

User apache
Group apache

### Section 2: 'Main' server configuration

ServerAdmin root@localhost
UseCanonicalName Off
DocumentRoot "/var/www/html"

<Directory />
	Order Deny,Allow
	Deny from all
	Options None
	AllowOverride None
</Directory>

<Directory "/var/www/html">
    Options -Indexes FollowSymLinks
    AllowOverride All 
    Order allow,deny
    Allow from all
</Directory>

<IfModule mod_userdir.c>
    UserDir disabled
</IfModule>

DirectoryIndex index.html index.html.var
AccessFileName .htaccess ht.acl

<Files ~ "^(\.ht)|(ht\.)">
    Order allow,deny
    Deny from all
    Satisfy All
</Files>

TypesConfig /etc/mime.types
DefaultType none 

<IfModule mod_mime_magic.c>
#   MIMEMagicFile /usr/share/magic.mime
    MIMEMagicFile conf/magic
</IfModule>

HostnameLookups Off
ErrorLog /var/log/apache/error_log
LogLevel warn
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
CustomLog logs/access_log combined

ServerSignature Off

Alias /icons/ "/var/www/icons/"

<Directory "/var/www/icons">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

<IfModule mod_dav_fs.c>
    # Location of the WebDAV lock database.
    DAVLockDB /var/lib/dav/lockdb
</IfModule>

ScriptAlias /cgi-bin/ "/var/www/cgi-bin/"

<Directory "/var/www/cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

IndexOptions FancyIndexing VersionSort NameWidth=* HTMLTable Charset=UTF-8

AddIconByEncoding (CMP,/icons/compressed.gif) x-compress x-gzip

AddIconByType (TXT,/icons/text.gif) text/*
AddIconByType (IMG,/icons/image2.gif) image/*
AddIconByType (SND,/icons/sound2.gif) audio/*
AddIconByType (VID,/icons/movie.gif) video/*

AddIcon /icons/binary.gif .bin .exe
AddIcon /icons/binhex.gif .hqx
AddIcon /icons/tar.gif .tar
AddIcon /icons/world2.gif .wrl .wrl.gz .vrml .vrm .iv
AddIcon /icons/compressed.gif .Z .z .tgz .gz .zip
AddIcon /icons/a.gif .ps .ai .eps
AddIcon /icons/layout.gif .html .shtml .htm .pdf
AddIcon /icons/text.gif .txt
AddIcon /icons/c.gif .c
AddIcon /icons/p.gif .pl .py
AddIcon /icons/f.gif .for
AddIcon /icons/dvi.gif .dvi
AddIcon /icons/uuencoded.gif .uu
AddIcon /icons/script.gif .conf .sh .shar .csh .ksh .tcl
AddIcon /icons/tex.gif .tex
AddIcon /icons/bomb.gif core

AddIcon /icons/back.gif ..
AddIcon /icons/hand.right.gif README
AddIcon /icons/folder.gif ^^DIRECTORY^^
AddIcon /icons/blank.gif ^^BLANKICON^^

DefaultIcon /icons/unknown.gif

ReadmeName README.html
HeaderName HEADER.html

IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t

AddLanguage ca .ca
AddLanguage cs .cz .cs
AddLanguage da .dk
AddLanguage de .de
AddLanguage el .el
AddLanguage en .en
AddLanguage eo .eo
AddLanguage es .es
AddLanguage et .et
AddLanguage fr .fr
AddLanguage he .he
AddLanguage hr .hr
AddLanguage it .it
AddLanguage ja .ja
AddLanguage ko .ko
AddLanguage ltz .ltz
AddLanguage nl .nl
AddLanguage nn .nn
AddLanguage no .no
AddLanguage pl .po
AddLanguage pt .pt
AddLanguage pt-BR .pt-br
AddLanguage ru .ru
AddLanguage sv .sv
AddLanguage zh-CN .zh-cn
AddLanguage zh-TW .zh-tw

LanguagePriority en ca cs da de el eo es et fr he hr it ja ko ltz nl nn no pl pt pt-BR ru sv zh-CN zh-TW

ForceLanguagePriority Prefer Fallback

AddDefaultCharset UTF-8
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-x509-ca-cert .crt
AddType application/x-pkcs7-crl    .crl

AddHandler type-map var
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml

Alias /error/ "/var/www/error/"

<IfModule mod_negotiation.c>
<IfModule mod_include.c>
    <Directory "/var/www/error">
        AllowOverride None
        Options IncludesNoExec
        AddOutputFilter Includes html
        AddHandler type-map var
        Order allow,deny
        Allow from all
        LanguagePriority en es de fr
        ForceLanguagePriority Prefer Fallback
    </Directory>
</IfModule>
</IfModule>

BrowserMatch "Mozilla/2" nokeepalive
BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0
BrowserMatch "RealPlayer 4\.0" force-response-1.0
BrowserMatch "Java/1\.0" force-response-1.0
BrowserMatch "JDK/1\.0" force-response-1.0

BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully
BrowserMatch "MS FrontPage" redirect-carefully
BrowserMatch "^WebDrive" redirect-carefully
BrowserMatch "^WebDAVFS/1.[0123]" redirect-carefully
BrowserMatch "^gnome-vfs/1.0" redirect-carefully
BrowserMatch "^XML Spy" redirect-carefully
BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully

### Section 3: Virtual Hosts

NameVirtualHost <IP_Serveur>:80

<VirtualHost domain.tld:80>
	ServerName domain.tld
	ServerAlias www.domain.tld
	ServerAdmin arthur@domain.tld
	DocumentRoot /var/www/html/public	
	<Directory /var/www/html/public>
		Options -Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all
		
		RedirectMatch ^/$ /index.html

		AuthName "Page d'administration protegee"
		AuthType Basic
		AuthUserFile "<chemin>"
		Require valid-user
	</Directory>
 
	ErrorLog /var/log/apache/error.domain.tld.log
	CustomLog /var/log/apache/access.domain.tld.log combined
</VirtualHost>

<VirtualHost domain.tld:80>
	ServerName blog.domain.tld
	ServerAdmin arthur@domain.tld
	DocumentRoot /var/www/html/blog
	<Directory /var/www/html/blog>
		Options -Indexes FollowSymLinks MultiViews
		AllowOverride None
		Order allow,deny
		allow from all

		AuthName "Page d'administration protegee"
		AuthType Basic
		AuthUserFile "<chemin>"
		Require valid-user

		# BEGIN WordPress
		<IfModule mod_rewrite.c>
				RewriteEngine On
				RewriteBase /
				RewriteRule ^index\.php$ - [L]
				RewriteCond %{REQUEST_FILENAME} !-f
				RewriteCond %{REQUEST_FILENAME} !-d
				RewriteRule . /index.php [L]
		</IfModule>
		# END WordPress
	</Directory>

	ErrorLog /var/log/apache/error.domain.tld.log
	CustomLog /var/log/apache/access.domain.tld.log combined
</VirtualHost>

<VirtualHost domain.tld:80>        
	ServerName domain.tld
        ServerAlias webmail.domain.tld
        ServerAdmin arthur@domain.tld
        DocumentRoot /var/www/html/webmail
        <Directory /var/www/html/webmail>
                Options -Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
               
                AuthName "Page d'administration protegee"
                AuthType Basic
                AuthUserFile "<chemin>"
                Require valid-user
        </Directory>

        ErrorLog /var/log/apache/error.domain.tld.log
        CustomLog /var/log/apache/access.domain.tld.log combined
</VirtualHost>

<VirtualHost domain.tld:80>
        ServerName domain.tld
        ServerAlias test.domain.tld
        
        DocumentRoot /var/www/html/test/
        <Directory /var/www/html/test>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
                
                AuthName "Page d'administration protegee"
                AuthType Basic
                AuthUserFile "<fichier htpasswd>"
                Require valid-user
        </Directory>

		ErrorLog /var/log/apache/error.domain.tld.log
        CustomLog /var/log/apache/access.domain.tld.log combined
</VirtualHost>
Je n'utilise pas de .htaccess.
GhosterK est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 21h14   #8
Rédacteur/Modérateur
 
Avatar de _Mac_
 
Inscription : août 2005
Messages : 8 302
Détails du profil
Informations forums :
Inscription : août 2005
Messages : 8 302
Points : 8 583
Points : 8 583
Je ne vois rien de spécial. Y a des fichiers dans conf.d ?

A part passer les logs d'Apache en debug pour voir d'où il sort ça, je n'ai pas d'idée.
__________________

Du détail, du détail, du détail !!!
Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute
_Mac_ est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/02/2012, 21h53   #9
Invité de passage
 
Inscription : septembre 2006
Messages : 11
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 11
Points : 3
Points : 3
Il y a simplement php.conf et welcome.conf, par défaut et sans directive particulière.

En mode debug, je n'ai pas plus d'infos que ce fameux
Citation:
[Mon Feb 13 21:38:33 2012] [error] [client <IP>] client denied by server configuration: /var/www/html/test/copyright.jpg
J'ai essayé de mettre l'image sur un autre vhost, toujours forbidden.
Et petite info supplémentaire : lorsque je liste les fichiers du répertoire mis en PJ du premier post, il n'affique que
Citation:
Parent Directory -
2-copy.txt 11-Feb-2012 22:28 5
pomme.jpg 11-Feb-2012 22:28 5.7K
Le plus surprenant c'est que personne ne semble avoir jamais eu ce problème.

EDIT : Après un nouveau test, l'accès au fichier fonctionne s'il n'a pas d'extension... Ca peut être une piste...
GhosterK est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h36.


 
 
 
 
Partenaires

Hébergement Web