8791 sujets

Développement web côté serveur, CMS

Bonjour à tous Smiley cligne

En ce jour de nouvel an je tente de configurer smartoptimizer sur mon serveur apache, hébergement ovh avec php 5.3. (perso)

Mon site fonctionnait niquel, j'ai tenté d'installer smartoptimiser et à présent j'ai ce message d'erreur dans la console:


GET http://mon-site/Js/onLoad.js 500 (Internal Server Error)
GET http://mon-site/Js/MSG.js 500 (Internal Server Error)
GET http://mon-site/Js/js.js 500 (Internal Server Error)
GET http://mon-site/Js/menuPrincipal.js 500 (Internal Server Error)
GET http://mon-site/Js/dataRetreiver.js 500 (Internal Server Error)
GET http://mon-site/Js/dataSender.js 500 (Internal Server Error)
GET http://mon-site/Js/prototype.js 500 (Internal Server Error)
GET http://mon-site/Js/scriptaculous.js?load=effects 500 (Internal Server Error)
GET http://mon-site/Js/modalbox.js 500 (Internal Server Error)
GET http://mon-site/style.css
GET http://mon-site/modalbox.css

--> En bref, tous mes .js et .css sont introuvable. (Pourtant en me baladant dans les listes de dossier je les trouve bien).

J'en conclus que cela vient donc de SmartOptimizer qui fait de l'url rewriting et doit me foutre en l'air mon système Smiley langue

Le dossier de smart possède le chmod 777.

J'ai configuré smart de cette manière: (j'ai pas trouvé de spoiler, désolé)

<?php
/*
 * SmartOptimizer Configuration File
 */


//base dir (a relative path to the base directory)
$settings['baseDir'] = '//homez.337/stagiairn/www/ambroise/WikiBakoro/';
// -> J'ai tenté beaucoup de chemin, croyant au départ que ça venait de là, voici le chemin absolu en partant de la racine serveur, est-ce le bon ?

//Encoding of your js and css files. (utf-8 or iso-8859-1)
$settings['charSet'] = 'utf-8'; 

//Show error messages if any error occurs (true or false)
$settings['debug'] = true;

//use this to set gzip compression On or Off
$settings['gzip'] = true;

//use this to set gzip compression level (an integer between 1 and 9)
$settings['compressionLevel'] = 6;

//these types of files will not be gzipped nor minified
$settings['gzipExceptions'] = array('gif','jpeg','jpg','png','swf'); 

//use this to set Minifier On or Off
$settings['minify'] = true;

//use this to set file concatenation On or Off
$settings['concatenate'] = true;

//separator for files to be concatenated
$settings['separator'] = ',';

//specifies whether to emebed files included in css files using the data URI scheme or not 
$settings['embed'] = true;

//The maximum size of an embedded file. (use 0 for unlimited size)
$settings['embedMaxSize'] = 0; //5KB

//these types of files will not be embedded
$settings['embedExceptions'] = array('htc'); 

//to set server-side cache On or Off
$settings['serverCache'] = true;

//if you change it to false, the files will not be checked for modifications and always cached files will be used (for better performance)
$settings['serverCacheCheck'] = true;

//cache dir
$settings['cacheDir'] = 'cache/';

//prefix for cache files
$settings['cachePrefix'] = 'so_';

//to set client-side cache On or Off
$settings['clientCache'] = true;

//Setting this to false will force the browser to use cached files without checking for changes.
$settings['clientCacheCheck'] = false;
?>


J'ai configuré le .htaccess à la racine de mon dossier de cette manière:

SetEnv PHP_VER 5
SetEnv REGISTER_GLOBALS 0

<IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On
</IfModule>

<files /Sessions>

	order allow,deny

deny from all
</files>


AddDefaultCharset utf-8
AddCharset utf-8 .html .css .js .xml .json .rss .php
Options -Indexes

# Sert théoriquement à obliger un encodage utf-8.
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
SetOutputFilter DEFLATE

# Désactivation des messages d'erreurs.
SetEnv error_reporting -1

# Désactivation du PHPSESSID dans l'url.
SetEnv SESSION_USE_TRANS_SID 0

# Désactivation du PHPSESSID dans l'url. -> Marche pas [ohwell]
#SetEnv SESSION_NAME sid

# Modification du temps d'une session, environ 4h.
SetEnv session.gc_maxlifetime 14400

### SmartOptimiser ###
<IfModule mod_expires.c>
	<FilesMatch "\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico)$">
		ExpiresActive On
		ExpiresDefault "access plus 10 years"
	</FilesMatch>
</IfModule>
<IfModule mod_rewrite.c>
	RewriteEngine On
	
	RewriteCond %{REQUEST_FILENAME} !-f
	RewriteCond %{REQUEST_FILENAME} !-d
	RewriteRule ^(.*\.(js|css))$ smartoptimizer/?$1
	
	<IfModule mod_expires.c>
		RewriteCond %{REQUEST_FILENAME} -f
		RewriteRule ^(.*\.(js|css|html?|xml|txt))$ smartoptimizer/?$1
	</IfModule>

	<IfModule !mod_expires.c>
		RewriteCond %{REQUEST_FILENAME} -f
		RewriteRule ^(.*\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico))$ smartoptimizer/?$1
	</IfModule>
</IfModule>
<FilesMatch "\.(gif|jpg|jpeg|png|swf|css|js|html?|xml|txt|ico)$">
	FileETag none
</FilesMatch>
### /smartOptimiser ###



enfin, voilà l'arborescence de mes dossiers:
http://img710.imageshack.us/img710/606/arborescence.png

Note: Le dossier /cache de smartoptimizer est vide. C'est donc qu'il ne fonctionne pas, j'ai l'impression.

Voili, voilou, je pense avoir mis tout ce dont vous pourriez avoir besoin pour identifier mon souci Smiley ohwell

Si vous souhaitez voir le site, c'est ici.

Merci à vous.

Edit: J'ai un peu mieux compris le fonctionnement de ce module, et j'ai inclus mes fichiers de cette manière:

		<link rel="stylesheet" href="smartoptimizer/?/style.css,modalbox.css" />
		<script type="text/javascript" src="smartoptimizer/?Js/onLoad.js,dataSender.js,js.js,menuPrincipal.js,dataRetreiver.js,dataSender.js,prototype.js,scriptaculous.js?load=effects,modalbox.js"></script>
		


Mais ce dont je me rend compte, c'est qu'en allant à la page du dossier et bien je me prend un error 500 ...
Modifié par Vadorequest (02 Jan 2012 - 04:52)
Benjamin-Ds a écrit :
Commence par regarder l'error log d'apache


Comment fait-on ça ? Je ne maîtrise pour ainsi dire pas vraiment l'environnement Linux. Ni Apache.

C'est sur un mutualisé.

Si tu parles de l'erreur affiché sur le navigateur, elle ne m'apprend rien.
Si tu es sur un mut ovh, je crois que tu peux allez voir l'error log d'apache sur le manager.

Chez les autres, je ne sais pas ...
404 -> ressource introuvable
500 -> erreur interne du serveur (Apache en l'occurence)

Déjà pour trouver la source d'erreur c'est bien de savoir à quoi correspondent les numéros d'erreurs.
J'ai précisé que c'était une erreur interne (500).

Sauf qu'une erreur interne peux provenir de beaucoup de choses, généralement des .htaccess.
Vadorequest a écrit :
J'ai précisé que c'était une erreur interne (500).

Sauf qu'une erreur interne peux provenir de beaucoup de choses, généralement des .htaccess.


Une fatal error php peut également en provoquer une (celon de la conf).