Jadual Kandungan
回复内容:
Rumah pembangunan bahagian belakang tutorial php nginx - tengine+php-fpm,访问index.php正常,访问index.PHP却会吧php文件下载过来。

nginx - tengine+php-fpm,访问index.php正常,访问index.PHP却会吧php文件下载过来。

Jun 06, 2016 pm 08:24 PM
docker nginx php

<code>server {
    listen 80;
    server_name  localhost;
    access_log /data/sites_logs/default.log combined;
    root /data/sites/default;
    index index.htm index.html index.php;
    if ( $query_string ~* ".*[\;'\].*" ){
        return 404;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
        expires 30d;
    }

    location ~ .*\.(js|css)?$ {
        expires 7d;
    }
    ###########################################隐藏index.php
    location / {  
        index  index.htm index.html index.php;   
        if (!-e $request_filename) {  
           rewrite  ^/(.*)$  /index.php/$1  last;  
           break;  
        }  
    }  
    ##########################################pathinfo 模式
#           location ~ .*\.(php|php5)?$ {
#               #fastcgi_pass remote_php_ip:9000;
#               fastcgi_pass unix:/dev/shm/php-cgi.sock;
#               fastcgi_index index.php;
#               include fastcgi.conf;
#           }
    location ~ \.php$ {
        fastcgi_pass   phpfpm:9000;
        fastcgi_index  index.php;

        include        fastcgi_params;

        #设置PATH_INFO并改写SCRIPT_FILENAME,SCRIPT_NAME服务器环境变量  
        set $fastcgi_script_name2 $fastcgi_script_name;  
        if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") {  
            set $fastcgi_script_name2 $1;  
            set $path_info $2;  
        }  
        fastcgi_param   PATH_INFO $path_info;  
        fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name2;  
        fastcgi_param   SCRIPT_NAME   $fastcgi_script_name2;  
    }

}</code>
Salin selepas log masuk
Salin selepas log masuk

回复内容:

<code>server {
    listen 80;
    server_name  localhost;
    access_log /data/sites_logs/default.log combined;
    root /data/sites/default;
    index index.htm index.html index.php;
    if ( $query_string ~* ".*[\;'\].*" ){
        return 404;
    }
    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
        expires 30d;
    }

    location ~ .*\.(js|css)?$ {
        expires 7d;
    }
    ###########################################隐藏index.php
    location / {  
        index  index.htm index.html index.php;   
        if (!-e $request_filename) {  
           rewrite  ^/(.*)$  /index.php/$1  last;  
           break;  
        }  
    }  
    ##########################################pathinfo 模式
#           location ~ .*\.(php|php5)?$ {
#               #fastcgi_pass remote_php_ip:9000;
#               fastcgi_pass unix:/dev/shm/php-cgi.sock;
#               fastcgi_index index.php;
#               include fastcgi.conf;
#           }
    location ~ \.php$ {
        fastcgi_pass   phpfpm:9000;
        fastcgi_index  index.php;

        include        fastcgi_params;

        #设置PATH_INFO并改写SCRIPT_FILENAME,SCRIPT_NAME服务器环境变量  
        set $fastcgi_script_name2 $fastcgi_script_name;  
        if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") {  
            set $fastcgi_script_name2 $1;  
            set $path_info $2;  
        }  
        fastcgi_param   PATH_INFO $path_info;  
        fastcgi_param   SCRIPT_FILENAME   $document_root$fastcgi_script_name2;  
        fastcgi_param   SCRIPT_NAME   $fastcgi_script_name2;  
    }

}</code>
Salin selepas log masuk
Salin selepas log masuk

你php-fpm配置的不符吧 本地应该是 127.0.0.1:9000 你phpfpm:9000 phpfpm是域名还是什么 看看nginx的日志 说什么

被mac os分区格式坑了一把。
mac os分区格式有2种:
1、Mac OS 扩展(区分大小写,日志式)
2、Mac OS 扩展(日志式)
我的主盘分区默认是第二种。通过docker挂在的话,就出现了这样的问题。
如果是服务器环境应该不会有这样的问题。

location ~* \.php$
~* 表示不区分大小写.

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Arahan sembang dan cara menggunakannya
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara Mengubah Sumber Imej Docker di China Cara Mengubah Sumber Imej Docker di China Apr 15, 2025 am 11:30 AM

Anda boleh beralih ke sumber cermin domestik. Langkah -langkah adalah seperti berikut: 1. Edit fail konfigurasi /etc/docker/daemon.json dan tambahkan alamat sumber cermin; 2. Selepas menyimpan dan keluar, mulakan semula perkhidmatan Docker Sudo SystemCtl Docker untuk meningkatkan kelajuan muat turun dan kestabilan imej.

Cara membuat cermin di Docker Cara membuat cermin di Docker Apr 15, 2025 am 11:27 AM

Langkah -langkah untuk membuat imej Docker: Tulis Dockerfile yang mengandungi arahan membina. Bina imej di terminal, menggunakan arahan membina Docker. Tag imej dan tetapkan nama dan tag menggunakan arahan tag docker.

Cara Membaca Versi Docker Cara Membaca Versi Docker Apr 15, 2025 am 11:51 AM

Untuk mendapatkan versi Docker, anda boleh melakukan langkah -langkah berikut: Jalankan arahan Docker "Docker -version" untuk melihat versi klien dan pelayan. Untuk MAC atau Windows, anda juga boleh melihat maklumat versi melalui tab versi Docktop GUI atau menu desktop Docker.

Cara mengemas kini imej Docker Cara mengemas kini imej Docker Apr 15, 2025 pm 12:03 PM

Langkah -langkah untuk mengemas kini imej Docker adalah seperti berikut: Tarik tag imej terkini imej baru memadam imej lama untuk tag tertentu (pilihan) mulakan semula bekas (jika diperlukan)

Cara Melihat Log dari Docker Cara Melihat Log dari Docker Apr 15, 2025 pm 12:24 PM

Kaedah untuk melihat log Docker termasuk: Menggunakan arahan Log Docker, contohnya: Log Docker Container_Name Gunakan arahan docker exec untuk menjalankan /bin /sh dan lihat fail log, contohnya: docker exec -it container_name /bin /sh; Cat /var/log/container_name.log Gunakan arahan log docker-compose compose, contohnya: docker-compose -f docker-com

Cara menggunakan desktop docker Cara menggunakan desktop docker Apr 15, 2025 am 11:45 AM

Bagaimana cara menggunakan desktop Docker? Docktop Docktop adalah alat untuk menjalankan bekas Docker pada mesin tempatan. Langkah -langkah untuk digunakan termasuk: 1. Pasang desktop Docker; 2. Mulakan desktop Docker; 3. Buat imej Docker (menggunakan Dockerfile); 4. Membina imej Docker (menggunakan Docker Build); 5. Jalankan bekas Docker (menggunakan Docker Run).

Cara Menyelamatkan Gambar Docker Cara Menyelamatkan Gambar Docker Apr 15, 2025 am 11:54 AM

Untuk menyimpan imej di Docker, anda boleh menggunakan arahan Docker Commit untuk membuat imej baru, yang mengandungi keadaan semasa bekas yang ditentukan, Sintaks: Docker Commit [Options] Nama Imej Container ID. Untuk menyimpan imej ke repositori, anda boleh menggunakan arahan PUSH Docker, Sintaks: Docker Push Nama Imej [: TAG]. Untuk mengimport imej yang disimpan, anda boleh menggunakan arahan tarik docker, sintaks: docker tarik nama imej [: tag].

Cara menjalankan arahan Docker Cara menjalankan arahan Docker Apr 15, 2025 am 11:24 AM

Bagaimana cara menjalankan arahan Docker? Pasang Docker dan mulakan daemon. Perintah Docker Biasa: Docker Images: Paparan Docker Imej PS: Paparan Docker Container Run: Run Container Docker Stop: Stop Container Docker RM: Padam Container Berinteraksi dengan Kontena Menggunakan Docker Command: Docker Exec: Execute Command Docker Lampir

See all articles