<div dir="ltr">I don't believe this is an nginx problem,  (I think it's somewhere in the php end) but don't know where to turn.  Hopefully since nginx seems to be tied closely with php-fpm, someone her might be able to point me in the right direction.<div><br></div><div>I'm experimenting with nginx on an Arch system.  I'm able to get pages from document-Root for both static and php pages.  I can get static page from User directory, but cannot get php page from there.  Here is  the location block for this part.</div><div><br></div><div>--------------------- Begin Code -----------------------</div><div><br></div><div>        location ~ ^/~(.+)(/.+\.php)(.*)? {<br>            alias          /home/$1/public_html;<br>            fastcgi_split_path_info (/[^/]+\.php)(.*)?$;<br><br>            # Shows /home/user/public_html<br>            add_header X-Debug-Document-Root $document_root;</div><div><br></div><div>            #next two = /~user/public_html<br>            add_header X-Debug-Document-Uri $document_uri;<br>            add_header X-Debug-Request-uri $request_uri;</div><div><br></div><div>            # Shows /hello.php<br>            add_header X-Debug-script-name $fastcgi_script_name;</div><div><br></div><div>            # Does not display<br>            add_header X-Debug-path-info $fastcgi_path_info;</div><div><br></div><div>            # This displays exactly correct path. I can copy and<br>            # paste this path after "ls -l" on command line and list the file<br>            add_header X-Debug-Script_Filename $document_root$fastcgi_script_name;<br></div><div><br></div><div>            # Displays /~user/hello.php<br>            add_header X-Debug-uri $uri;<br> <br>            # This doesn't return error error<br>            if (!-f $document_root$fastcgi_script_name) {<br>                return 404;<br>            }<br>            # This line causes Error 404 "File Not Found".<br>            # Without it -  ReturnsStatus code 200 with blank page (expected result)<br>            # Hard-coding path here still produces Error 404<br>            # Hard-coding path to file in Document Root and it displays correctly.<br>            fastcgi_param PATH_INFO $fastcgi_path_info;<br>            fastcgi_pass   unix:/run/php-fpm/php-fpm.sock;<br>            fastcgi_index  index.php;<br>            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;<br>            #include        fastcgi_params;<br>            return 200;    # To cause headers to show<br>        }</div><div><br></div><div>------------------------------------ End code --------------------------<br> It almost seems to be some kind of permission problem, but everything from /home down to the files in 'public_html' have read permissions for all entitities set, and again, static files in this folder are read and rendered.  I tried to find out if php needed any settings to allow reading outside document_root, but could not find anything.</div><div><br></div><div>Probably something stupidly simple, but if anyone can tell me what I'm doing wrong or missing, I'd appreciate it greatly. </div></div>