Problème de cache de développement Nginx + Laravel5.
曾经蜡笔没有小新
曾经蜡笔没有小新 2017-05-16 16:55:51
0
6
536

Bonjour à tous, je suis ici pour poser une autre question.
Mon problème est la mise en cache des pages.
La situation est la suivante :

  1. Mon environnement est Linux Mint+LNMP1.2, package de déploiement en un clic
  2. Chaque fois que je modifie un fichier localement, il faut toujours 1 minute pour actualiser la page avant que cela ne prenne effet.
  3. Ou peut-être qu'à chaque fois que je saisis sudo lnmp restart dans le terminal, cela prendra effet après actualisation (n'est-ce pas stupide, j'ai redémarré...)

Puis la question vient,
Comment puis-je résoudre ce problème de cache ? ?
Chaque fois que le développement local est problématique,
Publier mon vhost.conf

server
    {
        listen 80;
        #listen [::]:80;
        server_name x.x ;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/millyn/www/x.x/public;

        include other.conf;
        #error_page   404   /404.html;
        location /
        {
        try_files $uri $uri/ /index.php?$query_string;
        }
        location ~ [^/]\.php(/|$)
        {
            # comment try_files $uri =404; to enable pathinfo
            #try_files $uri =404;
            fastcgi_pass  unix:/tmp/php-cgi.sock;
            fastcgi_index index.php;
            include fastcgi.conf;
            #include pathinfo.conf;
            add_header Cache-Control 'no-store';
        }

       # location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
       # {
       #     expires      30d;
       # }

       # location ~ .*\.(js|css)?$
       # {
       #     expires      12h;
       # }

        access_log  /home/wwwlogs/x.x.log  access;
    }

Ce qui suit est à moinginx.conf

user  www www;

worker_processes auto;

error_log  /home/wwwlogs/nginx_error.log  info;

pid        /usr/local/nginx/logs/nginx.pid;

#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200;

events
    {
        use epoll;
        worker_connections 51200;
        multi_accept on;
    }

http
    {
        include       mime.types;
        default_type  application/octet-stream;

        server_names_hash_bucket_size 128;
        client_header_buffer_size 32k;
        large_client_header_buffers 4 32k;
        client_max_body_size 50m;

        sendfile   on;
        tcp_nopush on;

        keepalive_timeout 60;

        tcp_nodelay on;

        fastcgi_connect_timeout 300;
        fastcgi_send_timeout 300;
        fastcgi_read_timeout 300;
        fastcgi_buffer_size 64k;
        fastcgi_buffers 4 64k;
        fastcgi_busy_buffers_size 128k;
        fastcgi_temp_file_write_size 256k;

        gzip on;
        gzip_min_length  1k;
        gzip_buffers     4 16k;
        gzip_http_version 1.1;
        gzip_comp_level 2;
        gzip_types     text/plain application/javascript application/x-javascript text/javascript text/css application/xml application/xml+rss;
        gzip_vary on;
        gzip_proxied   expired no-cache no-store private auth;
        gzip_disable   "MSIE [1-6]\.";

        #limit_conn_zone $binary_remote_addr zone=perip:10m;
        ##If enable limit_conn_zone,add "limit_conn perip 10;" to server section.

        server_tokens off;
        #log format
        log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
             '$status $body_bytes_sent "$http_referer" '
             '"$http_user_agent" $http_x_forwarded_for';
        access_log off;

server
    {
        listen 80 default_server;
        #listen [::]:80 default_server ipv6only=on;
        server_name www.lnmp.org;
        index index.html index.htm index.php;
        root  /home/wwwroot/default;

        #error_page   404   /404.html;
        include enable-php.conf;

        location /nginx_status
        {
            stub_status on;
            access_log   off;
        }

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log  /home/wwwlogs/access.log  access;
    }
include vhost/*.conf;
}

Merci d'avoir répondu à mes questions. . Merci...

曾经蜡笔没有小新
曾经蜡笔没有小新

répondre à tous(6)
刘奇

Selon la situation, il devrait s'agir du cache ZendOpcache de PHP. Vous pouvez modifier la configuration du php.ini :

opcache.revalidate_freq=60 La recommandation officielle est de le définir sur 60 secondes.
Cela signifie que lorsque vous accédez à nouveau au script après 60 secondes, l'horodatage du fichier PHP sera détecté et, en cas de changement, le cache d'opcode sera mis à jour.
Il peut être réglé sur 0, de sorte que l'horodatage du fichier soit détecté à chaque accès et que la modification prenne effet lors de l'accès.

Ou désactivez ZendOpcache :
opcache.enable=0

Ou ajoutez le répertoire du projet à la liste noire pour éviter la mise en cache :
opcache.blacklist_filename=/png/www/example.com/blacklist
contenu de liste noire, tel que :
/png/www/example.com/public_html/

我想大声告诉你

Quels fichiers ont été modifiés ? Le fichier modèle mettra automatiquement à jour le cache. Le fichier de ressources statiques peut être dans le cache du navigateur. Essayez de forcer une actualisation.

过去多啦不再A梦
shellvim /usr/local/php/etc/php.ini

下面全部注释掉
;opcache
[Zend Opcache]
;zend_extension=opcache.so
;opcache.memory_consumption=128
;opcache.interned_strings_buffer=8
;opcache.max_accelerated_files=4000
;opcache.revalidate_freq=60
;opcache.fast_shutdown=1
;opcache.enable_cli=1
;opcache end

;xcache
;xcache end
漂亮男人

Le front-end ou back-end modifié.
S'il s'agit d'un fichier frontal, vous pouvez vérifier les paramètres du navigateur pour voir si le cache est désactivé

伊谢尔伦

Réponse correcte au deuxième étage, l'environnement de développement général n'a pas besoin d'activer opcache

迷茫

Il est recommandé de fermer l'environnement de développementOpcache. Il est plus adapté à l'environnement de production.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal