Предлагается развернуть на сервере базу данных MariaDB и писать в неё. Но я сомневаюсь что это имеет смысл, потому что приложение использует 1 человек.
как проще всего решить данную задачу?
server {
server_name server1.site.com;
root /var/www/server1.site.com/public;
# reverse proxy
location / {
proxy_pass http://10.0.0.1:80;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name server1.site.com;
root /var/www/server1.site.com/public;
# SSL
ssl_certificate /etc/letsencrypt/live/server1.site.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server1.site.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/server1.site.com/chain.pem;
# security
include nginxconfig.io/security.conf;
# reverse proxy
location / {
proxy_pass http://10.0.0.1:80;
include nginxconfig.io/proxy.conf;
}
# additional config
include nginxconfig.io/general.conf;
}
# subdomains redirect
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name *.server1.site.com;
# SSL
ssl_certificate /etc/letsencrypt/live/server1.site.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server1.site.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/server1.site.com/chain.pem;
return 301 https://server1.site.com$request_uri;
}
# HTTP redirect
server {
listen 80;
listen [::]:80;
server_name .server1.site.com;
include nginxconfig.io/letsencrypt.conf;
location / {
return 301 https://server1.site.com$request_uri;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name server2.site.com;
root /var/www/server2.site.com/public;
# SSL
ssl_certificate /etc/letsencrypt/live/server2.site.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server2.site.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/server2.site.com/chain.pem;
# security
include nginxconfig.io/security.conf;
# reverse proxy
location / {
proxy_pass http://10.0.0.2:80;
include nginxconfig.io/proxy.conf;
}
# additional config
include nginxconfig.io/general.conf;
}
# subdomains redirect
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name *.server2.site.com;
# SSL
ssl_certificate /etc/letsencrypt/live/server2.site.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/server2.site.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/server2.site.com/chain.pem;
return 301 https://server2.site.com$request_uri;
}
# HTTP redirect
server {
listen 80;
listen [::]:80;
server_name .server2.site.com;
include nginxconfig.io/letsencrypt.conf;
location / {
return 301 https://server2.site.com$request_uri;
}
}
process = subprocess.Popen(['ping', '-c 4', 'python.org'],
stdout=subprocess.PIPE,
universal_newlines=True)
while True:
output = process.stdout.readline()
print(output.strip())
# Do something else
return_code = process.poll()
if return_code is not None:
print('RETURN CODE', return_code)
# Process has finished, read rest of the output
for output in process.stdout.readlines():
print(output.strip())
break
В первом нужно вручную указывать столбцы, количество столбцов большое.
Второй не получается установить. Ошибки какие-то.
Чтоб при введении первых букв предлагались варианты городов (как на сайте)
Допустим, админ случайно удалил нужный объект или это сделал модератор, или модератор оказался гавнюком и начал все с сайта удалять. Что делать в таких случаях?
from google_images_search import GoogleImagesSearch
# if you don't enter api key and cx, the package will try to search
# them from environment variables GCS_DEVELOPER_KEY and GCS_CX
gis = GoogleImagesSearch('your_dev_api_key', 'your_project_cx')
# example: GoogleImagesSearch('ABcDeFGhiJKLmnopqweRty5asdfghGfdSaS4abC', '012345678987654321012:abcde_fghij')
#define search params:
_search_params = {
'q': '...',
'num': 1-50,
'safe': 'high|medium|off',
'fileType': 'jpg|gif|png',
'imgType': 'clipart|face|lineart|news|photo',
'imgSize': 'huge|icon|large|medium|small|xlarge|xxlarge',
'imgDominantColor': 'black|blue|brown|gray|green|pink|purple|teal|white|yellow'
}
# this will only search for images:
gis.search(search_params=_search_params)
# this will search and download:
gis.search(search_params=_search_params, path_to_dir='/path/')
# this will search, download and resize:
gis.search(search_params=_search_params, path_to_dir='/path/', width=500, height=500)
# search first, then download and resize afterwards
gis.search(search_params=_search_params)
for image in gis.results():
image.download('/path/')
image.resize(500, 500)
SSL module is not available
The problem is that Anaconda Python ships with its own SSL libraries and does not use the system SSL libraries when compiling the Python ssl module. The mod_ssl module in Apache is using the system libraries.
<--------->
The only solution is to use the system Python version and not Anaconda Python
Unless you have a specific requirement, is better to use the system Python version and not Anaconda Python.