【问题标题】:Unable to run .html files on nginx+php-fpm无法在 nginx+php-fpm 上运行 .html 文件
【发布时间】:2012-09-04 07:17:35
【问题描述】:

我无法在运行 Nginx 和 php-fpm 的 Ubuntu 12.04 服务器上运行 .html 文件。

执行 .html 扩展文件时,我得到的是拒绝访问。 .php 文件运行良好。

这是我的配置代码。

nginx.conf

user www-data;
worker_processes 4; # Make this equal to no of processors you have "cat /proc/cpuinfo |grep processor" @mayur
pid /var/run/nginx.pid;

events {
        worker_connections 2048; # Essential to keep it high for heavy sites @mayur
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        server_tokens on; #Make this off Live Server for Security Reasons: @mayur

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # Logging Settings
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        log_format      main    '$remote_addr - $remote_user [$time_local] $request '
                        '"$status" $body_bytes_sent "$http_referer" '
                        '"$http_user_agent" "$http_x_forwarded_for"';
        ##
        # Gzip Settings
        ##

        gzip on;
        gzip_disable "msie6";

        # gzip_vary on;
        # gzip_proxied any;
        # gzip_comp_level 6;
        # gzip_buffers 16 8k;
        # gzip_http_version 1.1;
        # gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # nginx-naxsi config
        ##
        # Uncomment it if you installed nginx-naxsi
        ##

        #include /etc/nginx/naxsi_core.rules;

        ##
        # nginx-passenger config
        ##
        # Uncomment it if you installed nginx-passenger
        ##

        #passenger_root /usr;
        #passenger_ruby /usr/bin/ruby;

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*;
}

网站可用/默认

server {
        listen   80; ## listen for ipv4; this line is default and implied

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        root /data/paytm/htdocs;
        index index.php index.html;

        server_name localhost;

        ssi on;

        location ~* ^.+\.(jpg|js|jpeg|png|ico|gif|js|css|swf)$ {
                expires 24h;
        }

        location ~ ^/.*\.html$ {
                fastcgi_pass    unix:/tmp/php5-fpm.sock;
                fastcgi_index   index.html;
                fastcgi_param   SCRIPT_FILENAME  /data/paytm/htdocs/$fastcgi_script_name;
                include         fastcgi_params;
        }

        location ~ ^/.*\.php$ {
                fastcgi_pass    unix:/tmp/php5-fpm.sock;
                fastcgi_index   index.html;
                fastcgi_param   SCRIPT_FILENAME  /data/paytm/htdocs/$fastcgi_script_name;
                include         fastcgi_params;
        }


        # For APIs and other stuff where we write our own Header Variables
        underscores_in_headers on;
        ignore_invalid_headers off;
}

【问题讨论】:

    标签: nginx php


    【解决方案1】:

    见这里:https://bugs.php.net/bug.php?id=60763 你需要添加到 /etc/php5/fpm/pool.d/www.conf 里面的 [www] 部分

    security.limit_extensions = .php .html
    

    【讨论】:

      【解决方案2】:

      请删除 sites-available/default 中的 location ~ ^/.*\.html$ 部分。

      【讨论】:

      • 这并不能解决问题,现在 .html 文件正在被浏览器下载。
      猜你喜欢
      • 2015-04-20
      • 2013-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-17
      • 1970-01-01
      • 2021-04-02
      • 1970-01-01
      相关资源
      最近更新 更多