Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
刷新页面后,当前工作目录在python中的显示方式不同_Python_Nginx_Uwsgi - Fatal编程技术网

刷新页面后,当前工作目录在python中的显示方式不同

刷新页面后,当前工作目录在python中的显示方式不同,python,nginx,uwsgi,Python,Nginx,Uwsgi,这真是奇怪的情况。 我试图从头开始使用Python创建一个web框架。 我正在尝试使用下面的代码获取文件的当前工作目录(技术上是当前.py文件的完整路径) os.getcwd() 问题是。。 如果我键入上述代码并重新启动uwsgi服务器,然后打印它。 第一次打印时,它总是打印如下 /var/www/html/mydocroot /var/www/html 然后,如果我刷新页面,“mydocroot”目录会自动消失,如下所示 /var/www/html/mydocroot /var/www

这真是奇怪的情况。 我试图从头开始使用Python创建一个web框架。 我正在尝试使用下面的代码获取文件的当前工作目录(技术上是当前.py文件的完整路径)

os.getcwd()
问题是。。 如果我键入上述代码并重新启动uwsgi服务器,然后打印它。 第一次打印时,它总是打印如下

/var/www/html/mydocroot
/var/www/html
然后,如果我刷新页面,“mydocroot”目录会自动消失,如下所示

/var/www/html/mydocroot
/var/www/html
它在刷新页面后创建与上面相同的输出。 我几乎花了一整天的时间来解决这个问题。 有什么想法或相同的经历吗

我也试过

os.path.dirname(os.path.abspath(__file__))
这个也是

比如说,

/var/www/html/mydocroot/Core/Settings
是我重新启动uwsgi服务器时的结果

/var/www/html/Core/Settings
当我刷新页面时,“mydocroot”会自动消失,如上所述

服务器{
server_name example.com;
重写^(.*)http://www.example.com 永久的;
}
服务器{
听80;
server_name example.com*.example.com;
地点/{
包括uwsgi_参数;
uwsgi_pass unix:/var/www/html/example/myapp.sock;
}
}
文件没有“当前工作目录”。给定进程只有一个全局当前工作目录。当前工作目录可以更改

os.chdir('/new/working/directory')
如果需要特定文件的目录,可以这样做

os.path.dirname(os.path.abspath(__file__))

是的,但每次都应该打印相同的内容,在以后的通话中不应该更改。这很奇怪,不是吗?我关闭了viltualenv进行测试,因为我认为这可能是问题所在。还更改了文件夹权限。但还是没有运气,你用的是什么web服务器和wsgi服务器?我用的是ubuntu上的nginx服务器。我有16年的PHP开发经验。但在这种情况下,这很奇怪。结果应该和你之前提到的一样..可能想要包括你的nginx配置和wsgi文件我在我的原始文章中添加了NGix和wsgi文件。谢谢你的帮助。