Настройка Nginx для нескольких php сайтов на windows - PullRequest
0 голосов
/ 14 апреля 2020

Я веб-разработчик и создаю сайты. Но у меня есть следующая проблема:

Поскольку я могу работать из дома (как, вероятно, большинство из нас, разработчиков), я хочу использовать nginx с php для продолжения работы на веб-сайтах. На работе один из моих коллег дал мне один nginx файл конфигурации , который может обслуживать несколько сайтов . Я опубликую весь блок кода ниже.

Проблема в том, что я работаю над windows 10, и я не знаю, как заставить этот код работать на моей машине.

My php версия PHP 7.3.12 , которая находится под C: \ php.

Моя nginx версия 1.16.1 , который находится под C: \ nginx -1.16.1 .

Я ценю любую помощь, которую я могу получить!

server {

index index.php index.html index.htm;
set $basepath "/home/nik/Code/";

set $domain $host;

set $dynroot "/var/www";

# check multi name domain to multi application
if ($domain ~ "^(.*)\.(.[^.]*)\.(site|vpnsite)$") {
        set $customer $1;
        set $developer $2;
        set $rootpath "${developer}/${customer}/";
        set $servername "${customer}.${developer}.site";

        set $dynroot "$basepath/$rootpath";
}

if ($domain ~ "^(.*)\.(.[^.]*)\.laravel$") {
        set $customer $1;
        set $developer $2;
        set $rootpath "${developer}/${customer}/";
        set $servername "${customer}.${developer}.laravel";

        set $dynroot "$basepath/$rootpath/public";
    }

client_max_body_size 134M;

server_name "dev"

access_log "/home/nik/Code/App/nginx-logs/${servername}.access.log";

error_log "/home/nik/Code/App/nginx-logs/combined.error.log";

root $dynroot;

# check file exist and send request sting to index.php 
location / {
    try_files $uri $uri/ /index.php?$args;
    autoindex on;
}

# allow execute all php files
location ~ \.php$ {

    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.2-fpm.sock;
}

# configure phpmyadmin path
location /phpmyadmin {
    root /usr/share/;
    index index.php;
    location ~ ^/phpmyadmin/(.+\.php)$ {
        try_files $uri =404;
        root /usr/share/;
        #fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $request_filename;
        include fastcgi_params;
        fastcgi_param PATH_INFO $fastcgi_script_name;
        fastcgi_buffer_size 128k;
        fastcgi_buffers 256 4k;
        fastcgi_busy_buffers_size 256k;
        fastcgi_temp_file_write_size 256k;
        fastcgi_intercept_errors on;
    }
    location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
        root /usr/share/;
    }
}

location /phpMyAdmin {
    rewrite ^/* /phpmyadmin last;
}

# disallow access to apache configs
location ~ /\.ht {
    deny all;
}

# disallow access to git configs path
location ~ /\.git {
    deny all;
}

}
...