0

I have a running version of magento 2.3, php 7.3 and nginx. The default store and another store work fine and are displayed correctly.

Whenever i try to use a different store code other than the 2 working, I receive a PHP error upon loading the page.

Fatal error: Uncaught Error: Call to a member function getDefaultCurrencyCode() on null in /var/www/html/magento2/vendor/magento/module-store/App/Action/Plugin/Context.php:146 
Stack trace: 
#0 /var/www/html/magento2/vendor/magento/module-store/App/Action/Plugin/Context.php(101): Magento\Store\App\Action\Plugin\Context->updateContext(Object(Magento\Store\Model\Store\Interceptor)) 
#1 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(121): Magento\Store\App\Action\Plugin\Context->beforeDispatch(Object(Magento\Cms\Controller\Index\Index\Interceptor), Object(Magento\Framework\App\Request\Http)) 
#2 /var/www/html/magento2/vendor/magento/framework/Interception/Interceptor.php(153): Magento\Cms\Controller\Index\Index\Interceptor->Magento\Framework\Interception\{closure}(Object(Magento\Framework\App\Request\Http)) 
#3 /var/www/html/magento2/generated/code/Magento/Cms/Controller/Index/Index/Interceptor.php(26): Magento\Cms\Controller\Index\Index\Interceptor->___callPlugins('dispatch', Array, Array) 
#4 /var/w in /var/www/html/magento2/vendor/magento/module-store/App/Action/Plugin/Context.php on line 146

The php files in the stack trace are still untouched, so default.

My nginx config for the multistore is:

upstream fastcgi_backend {
 server unix:/run/php/php7.3-fpm.sock;
}
map $http_host $MAGE_RUN_CODE {
 site_not_working.server.local site_not_working_nl_20;
 site_not_working2.server.local site_not_working2_nl_7;
 site_working.server.local site_working_nl_26;
 default_working.com default;
}
server {
 listen 80;
 server_name default_working.com site_working.local site_not_working2.server.local site_not_working.server.local;
 set $MAGE_ROOT /var/www/html/magento2/;
 include /var/www/html/general_configs/nginx.conf;
}

The included conf is:

root $MAGE_ROOT/pub;
index index.php;
autoindex off;
charset UTF-8;
error_page 404 403 = /errors/404.php;
location /.user.ini {
 deny all;
}
# PHP entry point for setup application
location ~* ^/setup($|/) {
 root $MAGE_ROOT;
 location ~ ^/setup/index.php {
 fastcgi_pass fastcgi_backend;
 fastcgi_param PHP_FLAG "session.auto_start=off \n suhosin.session.cryptua=off";
 fastcgi_param PHP_VALUE "memory_limit=756M \n max_execution_time=600";
 fastcgi_read_timeout 600s;
 fastcgi_connect_timeout 600s;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 include fastcgi_params;
 }
 location ~ ^/setup/(?!pub/). {
 deny all;
 }
 location ~ ^/setup/pub/ {
 add_header X-Frame-Options "SAMEORIGIN";
 }
}
# PHP entry point for update application
location ~* ^/update($|/) {
 root $MAGE_ROOT;
 location ~ ^/update/index.php {
 fastcgi_split_path_info ^(/update/index.php)(/.+)$;
 fastcgi_pass fastcgi_backend;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 fastcgi_param PATH_INFO $fastcgi_path_info;
 include fastcgi_params;
 }
 # Deny everything but index.php
 location ~ ^/update/(?!pub/). {
 deny all;
 }
 location ~ ^/update/pub/ {
 add_header X-Frame-Options "SAMEORIGIN";
 }
}
location / {
 try_files $uri $uri/ /index.php$is_args$args;
}
location /pub/ {
 location ~ ^/pub/media/(downloadable|customer|import|theme_customization/.*\.xml) {
 deny all;
 }
 alias $MAGE_ROOT/pub/;
 add_header X-Frame-Options "SAMEORIGIN";
}
location /static/ {
 # Uncomment the following line in production mode
 # expires max;
 # Remove signature of the static files that is used to overcome the browser cache
 location ~ ^/static/version {
 rewrite ^/static/(version\d*/)?(.*)$ /static/2ドル last;
 }
 location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2|json)$ {
 add_header Cache-Control "public";
 add_header X-Frame-Options "SAMEORIGIN";
 expires +1y;
 if (!-f $request_filename) {
 rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=2ドル last;
 }
 }
 location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
 add_header Cache-Control "no-store";
 add_header X-Frame-Options "SAMEORIGIN";
 expires off;
 if (!-f $request_filename) {
 rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=2ドル last;
 }
 }
 if (!-f $request_filename) {
 rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=2ドル last;
 }
 add_header X-Frame-Options "SAMEORIGIN";
}
location /media/ {
 try_files $uri $uri/ /get.php$is_args$args;
 location ~ ^/media/theme_customization/.*\.xml {
 deny all;
 }
 location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2)$ {
 add_header Cache-Control "public";
 add_header X-Frame-Options "SAMEORIGIN";
 expires +1y;
 try_files $uri $uri/ /get.php$is_args$args;
 }
 location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
 add_header Cache-Control "no-store";
 add_header X-Frame-Options "SAMEORIGIN";
 expires off;
 try_files $uri $uri/ /get.php$is_args$args;
 }
 add_header X-Frame-Options "SAMEORIGIN";
}
location /media/customer/ {
 deny all;
}
location /media/downloadable/ {
 deny all;
}
location /media/import/ {
 deny all;
}
location /errors/ {
 location ~* \.xml$ {
 deny all;
 }
}
location ~ ^/(index|get|static|errors/report|errors/404|errors/503|health_check)\.php$ {
 try_files $uri =404;
 fastcgi_pass fastcgi_backend;
 fastcgi_buffers 1024 4k;
 fastcgi_param PHP_FLAG "session.auto_start=off \n suhosin.session.cryptua=off";
 fastcgi_param PHP_VALUE "memory_limit=756M \n max_execution_time=18000";
 fastcgi_read_timeout 600s;
 fastcgi_connect_timeout 600s;
 fastcgi_index index.php;
 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 #added fastcgi params for store support
 fastcgi_param MAGE_RUN_CODE $MAGE_RUN_CODE;
 fastcgi_param MAGE_RUN_TYPE store;
 #fastcgi_param MAGE_RUN_TYPE store;
 include fastcgi_params;
}
include /var/www/html/magento2/pub/ub-tool/nginx.conf;
gzip on;
gzip_disable "msie6";
gzip_comp_level 6;
gzip_min_length 1100;
gzip_buffers 16 8k;
gzip_proxied any;
gzip_types
 text/plain
 text/css
 text/js
 text/xml
 text/javascript
 application/javascript
 application/x-javascript
 application/json
 application/xml
 application/xml+rss
 image/svg+xml;
gzip_vary on;
# Banned locations (only reached if the earlier PHP entry point regexes don't match)
location ~* (\.php$|\.phtml$|\.htaccess$|\.git) {
 deny all;
}

My php conf for the .sock-file is

[magento]
user = magento
group = magento
listen = /var/run/php/php7.3-fpm-magento.sock
listen.owner = www-data
listen.group = www-data
php_admin_value[disable_functions] = exec,passthru,shell_exec,system
php_admin_flag[allow_url_fopen] = off
pm = dynamic
pm.max_children = 10
pm.start_servers = 5
pm.min_spare_servers = 2
pm.max_spare_servers = 7
chdir = /

Is anyone able to notice what is causing the error on the module?

asked Apr 2, 2020 at 16:21

1 Answer 1

0

this issue was resolved by replacing the line

$defaultStore->getDefaultCurrencyCode()

to

$store->getDefaultCurrencyCode()

in the file /vendor/magento/module-store/App/Action/Plugin/Context.php

answered Apr 7, 2020 at 13:42

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.