2 votes

Où se trouve le fichier .htaccess sur AWS EC2 EB ?

J'ai une instance EC2 qui exécute Elastic Beanstalk. J'aimerais activer la compression GZIP, et je crois comprendre que je dois modifier mon code d'accès. .htaccess fichier.

J'ai lu que le .htaccess est situé dans le dossier racine de l'application installée. Cependant, je ne parviens pas à le trouver. (Je suis assez novice et je ne sais pas où se trouve le dossier racine).

Je suis capable de me connecter au serveur qui exécute Apache Tomcat 8 avec une application Java 8.

Question

Où se trouve .htaccess situé ?

C'est ce que j'ai dans mon Root :

$ ls
bin   cgroup  etc   lib    local       media  opt   root  sbin     srv  tmp  var
boot  dev     home  lib64  lost+found  mnt    proc  run   selinux  sys  usr

UPDATE

J'ai un .ebextensions/tomcat-settings.config maintenant ça marche. Il active la compression GZip.

option_settings:
  aws:elasticbeanstalk:environment:proxy:
    GzipCompression: 'true'
    ProxyServer: nginx
  aws:elasticbeanstalk:environment:proxy:staticfiles:
    /pub: public

Cela ne semble pas compresser .svg cependant. Donc, si possible, j'aimerais avoir ce qui suit, mais je ne sais pas où l'ajouter :

## EXPIRES CACHING ##
<IfModule mod_expires.c>
ExpiresActive On
ExpiresByType image/jpg "access 1 year"
ExpiresByType image/jpeg "access 1 year"
ExpiresByType image/gif "access 1 year"
ExpiresByType image/png "access 1 year"
ExpiresByType image/svg "access 1 year"
ExpiresByType text/css "access 1 month"
ExpiresByType text/html "access 1 month"
ExpiresByType application/pdf "access 1 month"
ExpiresByType text/x-javascript "access 1 month"
ExpiresByType application/x-shockwave-flash "access 1 month"
ExpiresByType image/x-icon "access 1 year"
ExpiresDefault "access 1 month"
</IfModule>
## EXPIRES CACHING ##

0voto

Brayan Caldera Points 314

Vous devez télécharger le fichier .htaccess ou le créer dans votre instance ec2 dans le dossier racine sur lequel vous téléchargez votre application, si vous utilisez elastick beanstalk, vous devez ajouter le fichier .htaccess à votre fichier .zip dans le dossier racine.

0voto

Brayan Caldera Points 314

Comment avez-vous configuré l'instance ec2, par ssh ou par le fichier .ebextensions ? si vous configurez l'instance par ssh et que vous utilisez un environnement élastique, la configuration sera effacée lorsque l'instance sera dégradée ou modifiée, si vous utilisez une seule instance par ec2, la configuration continuera à fonctionner.

si vous avez besoin de le configurer par .ebextensions vous devez créer un dossier nommé .ebextensions dans votre fichier .zip, dans ce dossier vous devez créer deux fichiers nommés enable_mod_deflate.conf et myapp.config.

Le contenu de enable_mod_deflate.conf :

  # mod_deflate configuration
  <IfModule mod_deflate.c>
  # Restrict compression to these MIME types
  AddOutputFilterByType DEFLATE text/plain
  AddOutputFilterByType DEFLATE text/html
  AddOutputFilterByType DEFLATE application/xhtml+xml
  AddOutputFilterByType DEFLATE text/xml
  AddOutputFilterByType DEFLATE application/xml
  AddOutputFilterByType DEFLATE application/xml+rss
  AddOutputFilterByType DEFLATE application/x-javascript
  AddOutputFilterByType DEFLATE text/javascript
  AddOutputFilterByType DEFLATE text/css
  AddOutputFilterByType DEFLATE image/png
  AddOutputFilterByType DEFLATE image/gif
  AddOutputFilterByType DEFLATE image/jpeg

  # Level of compression (Highest 9 - Lowest 1)
  DeflateCompressionLevel 9

  # Netscape 4.x has some problems.
  BrowserMatch ^Mozilla/4 gzip-only-text/html

  # Netscape 4.06-4.08 have some more problems
  BrowserMatch ^Mozilla/4\.0[678] no-gzip

  # MSIE masquerades as Netscape, but it is fine
  BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

  <IfModule mod_headers.c>
  # Make sure proxies don't deliver the wrong content
  Header append Vary User-Agent env=!dont-vary
  </IfModule>

  </IfModule>

Le contenu de myapp.config :

  container_commands:
      01_setup_apache:
          command: "cp .ebextensions/enable_mod_deflate.conf /etc/httpd/conf.d/enable_mod_deflate.conf"

Ensuite, vous devez redémarrer le serveur.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X