这真是个奇怪的情况。我正在尝试使用Python从头开始创建一个web框架。我正在尝试使用下面的代码获取文件的当前工作目录(从技术上讲,是当前.py文件的完整路径)。
os.getcwd()
问题是..如果我输入上面的代码并重启uwsgi服务器,然后打印它。第一次,它总是像下面这样打印。
/var/www/html/mydocroot
然后,如果我刷新页面,“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{
server_name example.com;
rewrite ^(.*) http://www.example.com permanent;
}
server {
listen 80;
server_name example.com *.example.com;
location / {
include uwsgi_params;
uwsgi_pass unix:/var/www/html/example/myapp.sock;
}
}
上面是我的nginx服务器配置。下面是wsgi配置。
[uwsgi]
module = wsgi:application
master = true
processes = 1
touch-reload = /var/www/html/ggr/wsgi.py
socket = myapp.sock
chmod-socket = 664
vacuum = true
max-requests = 1
die-on-term = true
logger = file:/var/log/ggr.log
catch-exceptions = true
发布于 2016-05-13 18:28:09
文件没有“当前工作目录”。对于给定的进程,只有一个全局当前工作目录。当前工作目录可以更改
os.chdir('/new/working/directory')
如果需要特定文件的目录,可以执行以下操作
os.path.dirname(os.path.abspath(__file__))
https://stackoverflow.com/questions/37216683
复制