diff --git a/docker-compose.yml b/docker-compose.yml index afbd210..72d0481 100755 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,13 +2,14 @@ version: '3.1' services: nginx: - image: nginx:latest + image: nginx:1.15.3-alpine-perl container_name: nginx volumes: - "./etc/nginx:/etc/nginx/conf.d" - "./Website:/var/www/html" - "./etc/nginx/logs:/var/log/nginx" - "./etc/letsencrypt:/etc/letsencrypt" + - "./etc/php:/etc/nginx/php" ports: - "80:80" - "443:443" @@ -64,7 +65,7 @@ services: - "./etc/tomcat:/usr/local/tomcat/conf" ghost: - image: ghost:latest + image: ghost:2.0.3-alpine container_name: ghost ports: - "127.0.0.1:2368:2368" @@ -78,8 +79,10 @@ services: - privacy__useUpdateCheck=false php: - image: nanoninja/php-fpm:7.2 + image: php:7.2.9-fpm-alpine3.6 container_name: php + ports: + - "9001:9001" volumes: - "./etc/php/php.ini:/usr/local/etc/php/conf.d/php.ini" - "./Website:/var/www/html/public" diff --git a/etc/nginx/default.conf b/etc/nginx/default.conf index 4bd4630..29ae090 100755 --- a/etc/nginx/default.conf +++ b/etc/nginx/default.conf @@ -16,7 +16,7 @@ server { access_log /var/log/nginx/access.log; root /app; - index index.jsp index.html index.htm; + index index.php index.jsp index.html index.htm; client_max_body_size 100M; @@ -25,14 +25,24 @@ server { } ####### Proxies ####### -# # PHP proxy -# location /board { + # PHP proxy +# location ~ \.php$ { # fastcgi_pass php:9001; # fastcgi_index index.php; -# include fastcgi.conf; +# include php/fastcgi.conf; # root /app; # } + location ~ \.php$ { + try_files $uri =404; + fastcgi_split_path_info ^(.+\.php)(/.+)$; + fastcgi_pass php:9001; + fastcgi_index index.php; + include fastcgi_params; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + fastcgi_param PATH_INFO $fastcgi_path_info; + } + # Ghost proxy location /blog { proxy_pass http://ghost; diff --git a/etc/php/fastcgi.conf b/etc/php/fastcgi.conf new file mode 100755 index 0000000..a9fb1ba --- /dev/null +++ b/etc/php/fastcgi.conf @@ -0,0 +1,17 @@ +fastcgi_param GATEWAY_INTERFACE CGI/1.1; +fastcgi_param SERVER_SOFTWARE nginx; +fastcgi_param QUERY_STRING $query_string; +fastcgi_param REQUEST_METHOD $request_method; +fastcgi_param CONTENT_TYPE $content_type; +fastcgi_param CONTENT_LENGTH $content_length; +fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; +fastcgi_param SCRIPT_NAME $fastcgi_script_name; +fastcgi_param REQUEST_URI $request_uri; +fastcgi_param DOCUMENT_URI $document_uri; +fastcgi_param DOCUMENT_ROOT $document_root; +fastcgi_param SERVER_PROTOCOL $server_protocol; +fastcgi_param REMOTE_ADDR $remote_addr; +fastcgi_param REMOTE_PORT $remote_port; +fastcgi_param SERVER_ADDR $server_addr; +fastcgi_param SERVER_PORT $server_port; +fastcgi_param SERVER_NAME $server_name;