Я использую smtplib для отправки простых писем для бронирования в приложении flask. Я использую почту Google и у меня есть пароль приложения, а также разрешены менее безопасные приложения. У меня работает система бронирования на моем персональном компьютере, но как только я перенесу ее на VPS, она перестает работать, по неизвестной причине, кроме имени пользователя и пароля, не принимаются, но они определенно верны и будут работать сам по себе, но не при запуске в wsgi и nginx.
Nginx config
server {
listen 80;
server_name example.com;
# return 301 https://$server_name$request_uri;
location / {
uwsgi_pass unix:/path/too/chatbot.sock;
include uwsgi_params;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name example.com;`
ssl_certificate /path/too/keys.pem;
ssl_certificate_key /path/too//primarykey.pem;
ssl_trusted_certificate /path/too//keys.pem;
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
# curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam
#ssl_dhparam /path/to/dhparam;
# intermediate configuration
ssl_protocols TLSv1.2;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers on;
# HSTS (ngx_http_headers_module is required) (63072000 seconds)
add_header Strict-Transport-Security "max-age=63072000" always;
# replace with the IP address of your resolver
resolver 8.8.8.8;
location / {
include uwsgi_params;
uwsgi_pass unix:/path/too/chatbot.sock;
}
}
UWSGI.ini file
[uwsgi]
module=wsgi:app
master = true
processes = 5
enable-threads = true
socket = chatbot.sock
chmod.socket = 666
vacuum = true
die-on-term = true
.env
DIALOGFLOW_PROJECT_ID=projectid
GOOGLE_APPLICATION_CREDENTIALS=Ajsonfile.json
RESTFUL_CREDENTIALS=restful_credentials.json
MAIL_USERNAME=example@gmail.com
MAIL_PASSWORD=apasswordforemailaddress
В настоящее время я думаю, что wsgi или nginx не могут найти файл из-за какой-то проблемы с разрешениями, но я выбрал все связанные файлы, у меня та же проблема с моим ключ Google API теперь тоже.
вся информация хранится в файле .env, который имеет правильный доступ к группе, вместе со всеми другими файлами, уже запущенными на сайте.
Я не Не знаю, что было бы полезно опубликовать здесь, кроме того, что я использую nginx и wsgi для предоставления приложения flask, некоторые элементы хранятся в файле .env, который, кажется, не читается.