Staging Installation im Unterordner mit nginx

Hallo Leute,

ich ahbe nach der Anleitung von Shopware (Shopware 6 - Testumgebung anlegen) eine Kopie eines Shops im Unterordner innerhalb des public Ordners gemacht und bin strikt nach der Anleitung vorgegangen. Wenn ich aber die Testumgebung aufrufe, erhalte ich einen Routingfehler. Es wird also der Hauptshop angesprochen und er findet die Route nicht. Ich vermute, dass in der Config für Nginx für die Domain noch etwas angepasst werden muss. Hat das schon einmal jemand gemacht?

Anbei auch meine aktuelle Config, sollte so ziemlich Standard sein:

 

server {
	listen 80;
	index index.php;
	client_max_body_size 128M;
	root /var/www/sw6/public;


	location /recovery/install {
		index index.php;
		try_files $uri /recovery/install/index.php$is_args$args;
	}

	location /recovery/update/ {
		location /recovery/update/assets {
		}
		if (!-e $request_filename){
			rewrite . /recovery/update/index.php last;
		}
	}

	location / {
	        try_files $uri /index.php$is_args$args;
	 }
	
	location ~ \.php$ {
		fastcgi_split_path_info ^(.+\.php)(/.+)$;
		include fastcgi.conf;
		fastcgi_param HTTP_PROXY "";
		fastcgi_buffers 8 16k;
		fastcgi_buffer_size 32k;
		fastcgi_read_timeout 300s;
		client_body_buffer_size 128k;
		fastcgi_pass unix:/run/php/php7.4-fpm.sock;
		http2_push_preload on;

		set $auth "Restricted";
        	
		if ($request_uri ~ /api/.*$){
                	set $auth "off";
        	}
        
        	if ($request_uri ~ /bundles/swagpaypal/.*$){
           		set $auth "off";
        	}

        	auth_basic $auth;
        	auth_basic_user_file /etc/nginx/.htpasswd;
	}


}

 

Kann geschlossen werden. Lösung: Staging-Umgebung in einen Ordner außerhalb von der Shopware Installation packen und dann in der Nginx Config mit einem Alias auf den Staging/Public Ordner umschreiben.

Hallo mit3233:  Kannst du mir hierzu deine Lösung verraten? Ich sitze gerade am selben Problem.

 

Ich danke dir :slight_smile:

Ich habe auch mal eine Testumgebung erstellt, bekomme beim Aufrufen allerdings einen 403 Permission Error. Weiß da jemand von Euch rat?
Der Tipp mit dem Verzeichnis hat schon mal weiter geführt! Danke @mit3233‍

Die Lösung müsste sein, die zweite Installation in einer komplett separaten „site“ unterzubringen.
Separate Datenbank und separates Hostingverzeichnis. Dann zu der Subdomain test.domain.tld verbinden oder komplett separater Domainname.

→ Unklar für mich ist heute noch, wie shopware mit den Miet-Plugins angeht, die man dann in der Testumgebung braucht, sie aber ja nicht noch mal zahlen will?

Damit eine Staging Instanz läuft, braucht ihr im existierenden „public“ Verzeichnis einen symbolischen Link zum neuen Pfad in die Staging Umgebung.

Also zum Beispiel so:
ln -s /var/www/html/www-pfad-des-hostings/staging/public/ /var/www/html/www-pfad-des-hostings/public/staging

das sieht dann so aus:
staging → /var/www/html/schwarzwaldmetzgerei/staging/public/

Dabei ist auf den letzten „/“ zu achten, sonst geht der Adminbereich nicht.