Unfortunately I don't think you'll be able to get that to work. Setting up a url rewriter with nginx will redirect all request to the url that you have specified, this would mean that the entier Mendix platform should be served on that url and Mendix doesn't handle deeplinks that way.
Before explaining why this nginx config is creating a problem, first bit of background on the deeplink. The Mendix Deeplink module is a little bit strange since it isn't an actual link in the traditional form. When you use the deeplink module there is piece of Java code listening to select commands that are being send to /link/
Everything that gets send to the /link/ url gets evaluated by the custom Java and if the input matches with a configuration out of the deeplink entity the only thing the code will do is store the url parameters in the 'PendingLink' entity.
The only thing the deeplink module does is read the url and translate the url parameters into a new instance of the 'PendingLink' entity. After the entity was created it redirects the user to the home page (rememberd this step for the nginx config).
There is browser interaction, the client system isn't loaded nothing happens on the deeplink. It only creates an entity, and opens the homepage. We've probably all made the mistake of forgetting to use the 'DeepLinkHome' microflow on the homepage, and you would have seen the deeplink wouldn't work, because as I mentioned before the deeplink java code itself doesn't do anything (besides creating the entity). After being redirected to the default index page, the client will load and open the homepage.
The home page is where the deeplink is actually executed, the ExecuteDeeplink Java code in the DeepLinkHome microflow is what actually executes the logic you had configured in the deeplink.
Now that we know how the deeplink really works, let's get back to nginx. Let's assume that your server is listening to https://pieter.com/ in your rewriter you have specified that all trafic to '/' will be forwarded to the deeplink url.
So if we remember how the deeplink works:
- The user will open https://pieter.com/
- nginx will forward the request to http://1.2.3.4:8000/link/formulier/customername
- the deeplink custom Java is executed and it creates a PendingLink entity
- the deeplink wants to redirect you to the homepage........? (this is where the problem starts)
Your application root (http://1.2.3.4:8000/) isn't accessible through nginx, because of this the deeplink module can't redirect to the homepage and you'll probably only get a blank page.
Because the deeplink itself doesn't server any content you can't have nginx redirect all requests to the deeplink. The deeplink code doesn't know what to do with this, nor is it able to server the client system.
No matter how you server the content, the platform intelligence (that is send to /xas/) can't be interpreted by your deeplink. As experienced users have seen all platform logic is communicated through the ../xas/ listener. This means that getting data, signing in, running a microflow is always send to https://pieter.com/xas/ but with your request handler this ends up on: http://1.2.3.4:8000/link/formulier/customername/xas/ and as you probably understand now, that doesn't go anywhere.
What is it exactly that you are trying to achieve with this deeplink? Maybe I can help suggest an alternative configuration in nginx, deeplink or custom Java to get to the same end result.