Files
django.remote/__pycache__/nginx_tab.cpython-38.pyc

247 lines
22 KiB
Plaintext
Raw Normal View History

2025-08-31 20:35:59 +08:00
U
u=<3D><00>@s<>ddlZddlZddlmZmZmZmZmZmZm Z m
Z
m Z m Z m Z ddlmZmZddlmZGdd<06>de <0C>ZGdd<08>de<0F>ZGd d
<EFBFBD>d
e<0F>ZGd d <0C>d e<0F>ZGd d<0E>de<0F>ZGdd<10>de<03>ZdS)<11>N) <0B>QWidget<65> QVBoxLayout<75> QHBoxLayout<75> QPushButton<6F>QLabel<65> QTextEdit<69> QFileDialog<6F> QMessageBox<6F> QLineEdit<69>QDialog<6F>QDialogButtonBox)<02>QThread<61>Signal)<01>loggercs&eZdZd<06>fdd<03> Zdd<05>Z<04>ZS)<07>PasswordDialogNcs<>t<00><00>|<01>|<00>d<01>|<00>d<02>t<04>}td<03>}|<02>|<03>t<07>|_|j<08> tj
<EFBFBD>|<02>|j<08>t t j t j B<00>}|j<0E>|j<10>|j<11>|j<12>|<02>|<04>|<00>|<02>dS)Nu 输入密码i,u请输入sudo密码:)<14>super<65>__init__<5F>setWindowTitle<6C>setMinimumWidthrr<00> addWidgetr
<00>password_input<75> setEchoMode<64>Passwordr <00>Ok<4F>Cancel<65>accepted<65>connect<63>accept<70>rejected<65>reject<63> setLayout)<05>self<6C>parent<6E>layout<75>label<65>
button_box<EFBFBD><01> __class__<5F><00>Ic:\Users\xiaji\Documents\个人文件夹\夏骥\桌面部署\nginx_tab.pyr
s 


 
zPasswordDialog.__init__cCs
|j<00><01>S<00>N)r<00>text<78>r!r(r(r)<00> get_password"szPasswordDialog.get_password)N)<06>__name__<5F>
__module__<EFBFBD> __qualname__rr-<00> __classcell__r(r(r&r)r srcs2eZdZdZeee<06>Z<07>fdd<03>Zdd<05>Z <09>Z
S)<06>NginxInstallThreadu安装Nginx的线程cst<00><00><01>||_||_dSr*)rr<00>
ssh_client<EFBFBD>password)r!r3r4r&r(r)r)s
zNginxInstallThread.__init__c
Cs<><00>z<t<00>d<01>|j<02>d|j<04>d|j<04>d<04><05>\}}}|j<05><06>}|<02><07><00><08>}|<03><07><00><08>}|dk<02>rt<00>d<06>|j<02>d<07>\}}}|j<05><06>}|<02><07><00><08><00> <09>}|<03><07><00><08>} t<00>d|<07><00><02>t<00>d |<08><00><02>| r<>t<00>
d
| <09><00><02>|r<>|j <0B> d d |<08><00><02>t<00>d |<08><00><02>n|j <0B> d d<0E>t<00>
d<0E>n$|j <0B> d d|<06><00><02>t<00>
d|<06><00><02>WnJt k
<EFBFBD>r<>}
z*t|
<EFBFBD>} |j <0B> d | <0B>t<00>
d| <0B><00><02>W5d}
~
XYnXdS)Nu开始安装Nginx<6E>bash -c 'echo "z " | sudo -S apt update && echo "z!" | sudo -S apt install -y nginx'ru验证Nginx安装znginx -vuNginx版本检查状态: uNginx版本信息: uNginx版本检查错误: T<>Nginx安装成功: Fu&Nginx安装后无法获取版本信息<E4BFA1>Nginx安装失败: uNginx安装异常: )r<00>infor3<00> exec_commandr4<00>channel<65>recv_exit_status<75>read<61>decode<64>strip<69>error<6F> result_ready<64>emit<69> Exception<6F>str) r!<00>stdin<69>stdout<75>stderr<72> exit_status<75>outputr?<00>version_exit_statusZ nginx_version<6F> version_error<6F>e<> error_msgr(r(r)<00>run.s6
$
  


  zNginxInstallThread.run<75> r.r/r0<00>__doc__r<00>boolrCr@rrMr1r(r(r&r)r2%s
 r2cs4eZdZdZeee<06>Zd<07>fdd<04> Zdd<06>Z <09>Z
S)<08>NginxConfigThreadu 处理Nginx配置文件的线程<E7BABF>uploadcs,t<00><00><01>||_||_||_||_||_dSr*)rrr3<00>config_content<6E> config_pathr4<00> operation)r!r3rSrTr4rUr&r(r)rYs 
zNginxConfigThread.__init__c
Cs<><00>z:t<00>d|j<02>d|j<03><00><04>|jdk<02>r<>d}|j<04>d|<01>d|j<06>d<07><05>\}}}|j<07><08>}|dkr<>|<04> <09><00>
<EFBFBD>}|j <0B> d d
|<06><00><02>t<00> d
|<06><00><02>WdSd |j<0E>d |j<02>d |j<02>d<0E>}|j<04>|<07>\}}}|j<07><08>}|dkr<>|<04> <09><00>
<EFBFBD>}t<00>d|<06><00><02>d |j<0E>d|<01>d |j<02>d<11>} |j<04>| <09>\}}}|j<07><08>}
|
dk<02>rb|j <0B> dd|j<02><00><02>t<00>d|j<02><00><02>n0|<04> <09><00>
<EFBFBD>}|j <0B> d d|<06><00><02>t<00> d|<06><00><02>n<>|jdk<02>r:d |j<0E>d|j<02>d<11>} |j<04>| <0B>\}}}|j<07><08>}|dk<02>r
|<03> <09><00>
<EFBFBD>} |j <0B> d| <0C>t<00>d|j<02><00><02>n0|<04> <09><00>
<EFBFBD>}|j <0B> d d|<06><00><02>t<00> d|<06><00><02>WnJtk
<EFBFBD>r<>} z*t| <0A>}|j <0B> d |<0E>t<00> d|<0E><00><02>W5d} ~ XYnXdS)Nu开始处理Nginx配置文件: <20>
, 操作: rRz/tmp/nginx_config.conf<6E>cat > <20>
<< 'EOF'
<EFBFBD>
EOFrF<>创建临时文件失败: r5z" | sudo -S cp <20> z.bak'u备份原配置文件失败: <20>" | sudo -S mv <20>'Tu配置文件上传成功: u配置文件上传失败: <20>downloadz" | sudo -S cat u配置文件下载成功: u配置文件下载失败: uNginx配置文件处理异常: )rr8rTrUr3r9rSr:r;r<r=r@rAr?r4<00>warningrBrC)r!<00> temp_filerDrErFrGr?Z
backup_cmdZ backup_status<75>move_cmd<6D> move_statusZ download_cmdrSrKrLr(r(r)rMasR "
 
 

  

  zNginxConfigThread.run)rRrNr(r(r&r)rQUs
rQcs2eZdZdZeee<06>Z<07>fdd<03>Zdd<05>Z <09>Z
S)<06>NginxControlThreadu控制Nginx服务的线程cs t<00><00><01>||_||_||_dSr*)rrr3r4<00>action)r!r3r4rdr&r(r)r<00>s
zNginxControlThread.__init__c
Cs<><00>zjt<00>d|j<02><00><02>|jdkr0d|j<03>d<04>}n<>|jdkrJd|j<03>d<06>}n||jdkrdd|j<03>d<08>}nb|jd kr~d|j<03>d
<EFBFBD>}nH|jd kr<>d|j<03>d <0C>}n.|j<04>d d|j<02><00><02>t<00>d|j<02><00><02>WdS|j<07>|<01>\}}}|j <09>
<EFBFBD>}|<03> <0B><00> <0C>}|<04> <0B><00> <0C>}|dk<02>r6|j<04>dd|j<02>d|<06><00><04>t<00>d|j<02>d<13><03>n4|j<04>d d|j<02>d|<07><00><04>t<00>d|j<02>d|<07><00><04>WnJt k
<EFBFBD>r<>}z*t|<08>} |j<04>d | <09>t<00>d| <09><00><02>W5d}~XYnXdS)Nu开始执行Nginx服务操作: <20>restartr5z$" | sudo -S systemctl restart nginx'<27>enablez#" | sudo -S systemctl enable nginx'<27>disablez$" | sudo -S systemctl disable nginx'<27>statusz#" | sudo -S systemctl status nginx'<27>
configtestz" | sudo -S nginx -t'Fu不支持的操作: rTzNginx u 操作成功
u 操作成功u 操作失败: uNginx服务控制异常: )rr8rdr4r@rAr?r3r9r:r;r<r=rBrC)
r!<00>commandrDrErFrGrHr?rKrLr(r(r)rM<00>s8





  
zNginxControlThread.runrNr(r(r&r)rc<00>s
 rccs4eZdZdZeee<06>Zd<07>fdd<04> Zdd<06>Z <09>Z
S)<08>NginxSiteThreadu 处理Nginx站点配置的线程<E7BABF>createcs,t<00><00><01>||_||_||_||_||_dSr*)rrr3<00> site_config<69> site_namer4rU)r!r3rmrnr4rUr&r(r)r<00>s 
zNginxSiteThread.__init__c
Cs:<00>z<>t<00>d|j<02>d|j<03><00><04>|jdk<02>rFd|j<02><00>}d|j<02>d<06>}|j<04>d|<02>d|j<06>d <09><05>\}}}|j<07><08>}|d
kr<>|<05> <09><00>
<EFBFBD>}|j <0B> d d |<07><00><02>t<00> d |<07><00><02>WdSd |j<0E>d|<02>d|<01>d<10>}|j<04>|<08>\}}}|j<07><08>} | d
k<02>r|j <0B> dd|<01><00><02>t<00>d|<01><00><02>n0|<05> <09><00>
<EFBFBD>}|j <0B> d d|<07><00><02>t<00> d|<07><00><02>n<>|jdk<02>r<>d |j<0E>d|j<02>d<16>}
|j<04>|
<EFBFBD>\}}}|j<07><08>}|d
k<02>r<>|j <0B> dd|j<02><00><02>t<00>d|j<02><00><02>n0|<05> <09><00>
<EFBFBD>}|j <0B> d d|<07><00><02>t<00> d|<07><00><02>WnJtk
<EFBFBD>r4} z*t| <0B>} |j <0B> d | <0C>t<00> d| <0C><00><02>W5d} ~ XYnXdS)Nu开始处理Nginx站点配置: rVrlz/etc/nginx/sites-available/z/tmp/z.confrWrXrYrFrZr5r\r[r]Tu 站点配置文件创建成功: u 站点配置文件创建失败: rfz-" | sudo -S ln -s /etc/nginx/sites-available/z /etc/nginx/sites-enabled/'u站点配置启用成功: u站点配置启用失败: uNginx站点配置处理异常: )rr8rnrUr3r9rmr:r;r<r=r@rAr?r4rBrC) r!Z site_pathr`rDrErFrGr?rarbZ
enable_cmdrKrLr(r(r)rM<00>sF  "
 

  

 zNginxSiteThread.run)rlrNr(r(r&r)rk<00>s
rkcs<>eZdZ<02>fdd<02>Zdd<04>Zdd<06>Zdd<08>Zd d
<EFBFBD>Zd d <0C>Zd d<0E>Z dd<10>Z
dd<12>Z dd<14>Z dd<16>Z dd<18>Zdd<1A>Zdd<1C>Zdd<1E>Zdd <20>Zd!d"<22>Zd#d$<24>Zd%d&<26>Zd'd(<28>Zd)d*<2A>Zd+d,<2C>Zd-d.<2E>Zd/d0<64>Zd1d2<64>Z<1B>ZS)3<>NginxTabcs.t<00><00><01>d|_d|_d|_d|_|<00><06>dS)N<>)rrr3<00>username<6D> project_name<6D> server_ip<69>init_uir,r&r(r)rs 
zNginxTab.__init__cCst<00>}t<01>}td<01>|_|jj<04>|j<06>|<02>|j<03>|<01>|<02>t<00>}|<03>t d<02><01>t
<EFBFBD>|_ |j <0B> d<03>|<03>|j <0B>t<01>}td<04>|_ |j j<04>|j<0E>|<04>|j <0A>td<05>|_|jj<04>|j<10>|<04>|j<0F>|<03>|<04>|<01>|<03>t<00>}|<05>t d<06><01>t
<EFBFBD>|_|j<11> d<03>|<05>|j<11>t<01>}td<07>|_|jj<04>|j<13>|<06>|j<12>td<08>|_|jj<04>|j<15>|<06>|j<14>|<05>|<06>|<01>|<05>t<01>}td <09>|_|jj<04>|j<17>|<07>|j<16>td
<EFBFBD>|_|jj<04>|j<19>|<07>|j<18>|<01>|<07>t
<EFBFBD>|_|j<1A> d <0B>|<01>|j<1A>|<00>|<01>|<00><1C>dS) N<> 安装NginxuNginx主配置文件编辑器:F<>下载主配置文件<E69687>上传主配置文件uNginx站点配置编辑器:<3A>创建站点配置<E9858D>启用站点配置<E9858D> 重启Nginx<6E>查看Nginx状态T)rrrZinstall_nginx_btn<74>clickedr<00> install_nginxr<00> addLayoutrr<00>main_config_editor<6F> setReadOnlyZdownload_main_config_btn<74>download_main_configZupload_main_config_btn<74>upload_main_config<69>site_config_editorZcreate_site_config_btn<74>create_site_configZenable_site_config_btn<74>enable_site_configZrestart_nginx_btn<74> restart_nginxZcheck_nginx_status_btn<74>check_nginx_status<75> output_textr <00>init_config_content)r!r#Zinstall_layoutZmain_config_layoutZmain_config_btn_layoutZsite_config_layoutZsite_config_btn_layoutZcontrol_layoutr(r(r)rts^
 
  
 
 

  
 
 


 
 
  
zNginxTab.init_uicCsld}|j<00>|<01>d}|d7}|d7}|d7}|d7}|d7}|d7}|d 7}|d
7}|d 7}|j<02>|<02>d S) u初始化配置文件内容u<E5AEB9>
# 全局块配置Nginx进程的基本运行参数
user www-data; # Nginx进程运行的用户/组默认是www-data不是你的登录用户xiaji
worker_processes auto; # 工作进程数auto表示自动匹配CPU核心数
pid /run/nginx.pid; # Nginx进程PID文件路径
include /etc/nginx/modules-enabled/*.conf; # 加载启用的模块配置
# events块配置Nginx与客户端的网络连接
events {
worker_connections 768; # 每个工作进程的最大并发连接数
# multi_accept on; # 可选:允许工作进程同时接受多个连接(默认注释)
}
# http块配置HTTP服务的全局参数核心部分
http {
##
# 基础配置
##
sendfile on; # 启用高效文件传输模式
tcp_nopush on; # 配合sendfile使用优化TCP传输
tcp_nodelay on; # 禁用Nagle算法减少小数据包延迟
keepalive_timeout 65; # 长连接超时时间(秒)
types_hash_max_size 2048; # 类型哈希表的最大大小优化MIME类型查找
include /etc/nginx/mime.types; # 加载MIME类型映射文件
default_type application/octet-stream; # 默认MIME类型未匹配时返回二进制流
##
# 日志配置
##
access_log /var/log/nginx/access.log; # 访问日志路径
error_log /var/log/nginx/error.log; # 错误日志路径
##
# SSL/TLS配置全局默认值
##
ssl_protocols TLSv1.2 TLSv1.3; # 支持的SSL/TLS协议禁用不安全的旧协议
ssl_prefer_server_ciphers on; # 优先使用服务器端指定的加密套件
##
# Gzip压缩配置
##
gzip on; # 启用Gzip压缩
# gzip_vary on; # 可选在响应头添加Vary: Accept-Encoding默认注释
# gzip_proxied any; # 可选:对代理请求也启用压缩(默认注释)
# gzip_comp_level 6; # 可选压缩级别1-9默认6默认注释
# gzip_buffers 16 8k; # 可选:压缩缓冲区大小(默认注释)
# gzip_http_version 1.1; # 可选支持的HTTP版本默认注释
# gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; # 可选指定压缩的MIME类型默认注释
##
# 加载站点配置关键默认站点配置不在nginx.conf里而是通过include引入
##
include /etc/nginx/conf.d/*.conf; # 加载conf.d目录下的自定义配置
include /etc/nginx/sites-enabled/*; # 加载启用的站点配置(默认站点在这里)
}
# 可选加载流处理配置如TCP/UDP代理默认注释
# include /etc/nginx/streams-enabled/*.conf;z server {
z listen 80;
u! server_name 【IP地址】;
u$ # 转发动态请求到Gunicorn
z location / {
u/ proxy_pass http://【IP地址】:8000;
z% proxy_set_header Host $host;
z1 proxy_set_header X-Real-IP $remote_addr;
z }
z}
N)r<00> setPlainTextr<74><00>r!Zmain_config_contentZsite_config_contentr(r(r)r<>os= zNginxTab.init_config_contentcCsL|j<00><01>}|<01>d|j<03>}|j<00>|<01>|j<05><01>}|<02>d|j<06>}|j<05>|<02>dS)u更新配置文件内容Zxiajiu【IP地址】N)r<00> toPlainText<78>replacerqr<>r<>rsr<>r(r(r)<00>update_config_content<6E>s 
 
zNginxTab.update_config_contentcCs||_t<01>d<01>dS)u设置SSH客户端u#Nginx标签页已设置SSH客户端N)r3rr8)r!r3r(r(r)<00>set_ssh_client<6E>szNginxTab.set_ssh_clientcCs||_t<01>d|<01><00><02>dS)u设置用户名u"Nginx标签页已设置用户名: N)rqrr8)r!rqr(r(r)<00> set_username<6D>szNginxTab.set_usernamecCs.||_||_t<02>d|<01>d|<02><00><04>|<00><04>dS)u设置项目信息u%Nginx标签页已设置项目信息: z, N)rrrsrr8r<>)r!rrrsr(r(r)<00>set_project_info<66>szNginxTab.set_project_infocCs|j<00>|<01>dS)u添加输出到文本框N)r<><00>append)r!r+r(r(r)<00> append_output<75>szNginxTab.append_outputcCst|js|<00>d<01>dSt|<00>}|<01><03>tjkrf|<01><06>}|<00>d<03>t|j|<02>|_|jj <09>
|j <0B>|j<08> <0C>n
|<00>d<04>dS)ru<00>错误: 未连接到服务器Nu正在安装Nginx...<2E>用户取消了密码输入) r3r<>r<00>exec_r <00>Acceptedr-r2<00>install_threadr@r<00>on_install_result<6C>start<72>r!<00>dialogr4r(r(r)r}<00>s

 zNginxTab.install_nginxcCsl|r4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d|<02>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|dd|<02><00><02>dS)u处理安装结果u安装成功: r6<00>成功u安装失败: r7<00>错误N<E8AFAF>r<>rr8r <00> informationr?r_<00>r!<00>success<73>messager(r(r)r<><00>szNginxTab.on_install_resultcCsz|js|<00>d<01>dSt|<00>}|<01><03>tjkrl|<01><06>}|<00>d<03>t|jdd|d<06>|_|jj <09>
|j <0B>|j<08> <0C>n
|<00>d<07>dS)rvr<>Nu#正在下载Nginx主配置文件...rp<00>/etc/nginx/nginx.confr^r<>) r3r<>rr<>r r<>r-rQ<00> config_threadr@r<00>on_download_main_config_resultr<74>r<>r(r(r)r<><00>s

 zNginxTab.download_main_configcCsJ|r&|j<00>|<02>|<00>d<01>t<03>d<02>n |<00>d|<02><00><02>t<03>d|<02><00><02>dS)u!处理下载主配置文件结果u主配置文件下载成功u Nginx主配置文件下载成功u主配置文件下载失败: u"Nginx主配置文件下载失败: N)rr<>r<>rr8r?r<>r(r(r)r<>s  
 z'NginxTab.on_download_main_config_resultcCs<>|js|<00>d<01>dS|j<02><03>}t|<00>}|<02><05>tjkrv|<02><08>}|<00>d<03>t |j|d|d<05>|_
|j
j <0B> |j <0A>|j
<EFBFBD><0E>n
|<00>d<06>dS)rwr<>Nu#正在上传Nginx主配置文件...r<>rRr<>)r3r<>rr<>rr<>r r<>r-rQr<>r@r<00>on_upload_main_config_resultr<74>)r!rSr<>r4r(r(r)r<>s


 zNginxTab.upload_main_configcCs<>|r<>|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d|<02>|<00>d<04>t|<00>}|<03><06>tjkr<>|<03> <09>}t
|j |d<05>|_ |j j <0A>|j<0F>|j <0C><10>q<>|<00>d<06>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d d|<02><00><02>d
S) u!处理上传主配置文件结果u上传成功: u"Nginx主配置文件上传成功: r<><00>&正在检查Nginx配置文件语法...rir<>u上传失败: u"Nginx主配置文件上传失败: r<>N)r<>rr8r r<>rr<>r r<>r-rcr3<00> check_threadr@r<00>on_upload_configtest_resultr<74>r?r_<00>r!r<>r<>r<>r4r(r(r)r<>1s
  z%NginxTab.on_upload_main_config_resultcCsR|r|<00>d<01>t<01>d<02>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<04>|dd|<02><00><02>dS)u3处理上传主配置文件后的配置测试结果<E7BB93>配置文件语法检查通过u/Nginx主配置文件上传后语法检查通过<E9809A> 配置文件语法检查失败: u1Nginx主配置文件上传后语法检查失败: r<><00>%Nginx配置文件语法检查失败: N<>r<>rr8r?r r_r<>r(r(r)r<>Ks 
 z$NginxTab.on_upload_configtest_resultcCs<>|js|<00>d<01>dS|js(|<00>d<03>dS|j<03><04>}t|<00>}|<02><06>tjkr<>|<02> <09>}|<00>d|j<02>d<05><03>t
|j||j|d<06>|_ |j j <0C> |j<0E>|j <0B><0F>n
|<00>d<07>dS)rxr<>N<>错误: 未设置项目名u 正在创建站点配置文件: <20>...rlr<>)r3r<>rrr<>r<>rr<>r r<>r-rk<00> site_threadr@r<00>on_create_site_config_resultr<74>)r!rmr<>r4r(r(r)r<>Us


 zNginxTab.create_site_configcCs<>|r<>|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d|<02>|<00>d<04>t|<00>}|<03><06>tjkr<>|<03> <09>}t
|j |d<05>|_ |j j <0A>|j<0F>|j <0C><10>q<>|<00>d<06>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d d|<02><00><02>d
S) u处理创建站点配置结果u创建成功: uNginx站点配置创建成功: r<>r<>rir<>u创建失败: uNginx站点配置创建失败: r<>N)r<>rr8r r<>rr<>r r<>r-rcr3r<>r@r<00>on_create_configtest_resultr<74>r?r_r<>r(r(r)r<>ns
  z%NginxTab.on_create_site_config_resultcCsR|r|<00>d<01>t<01>d<02>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<04>|dd|<02><00><02>dS)u6处理创建站点配置文件后的配置测试结果r<E69E9C>u2Nginx站点配置文件创建后语法检查通过r<E8BF87>u4Nginx站点配置文件创建后语法检查失败: r<>r<>Nr<4E>r<>r(r(r)r<><00>s 
 z$NginxTab.on_create_configtest_resultcCs<>|js|<00>d<01>dS|js(|<00>d<03>dSt|<00>}|<01><04>tjkr<>|<01><07>}|<00>d|j<02>d<05><03>t|jd|j|d<07>|_ |j j
<EFBFBD> |j <0C>|j <09> <0A>n
|<00>d<08>dS) ryr<>Nr<4E>u正在启用站点配置: r<>rprfr<>)r3r<>rrrr<>r r<>r-rkr<>r@r<00>on_enable_site_config_resultr<74>r<>r(r(r)r<><00>s

 zNginxTab.enable_site_configcCs<>|r<>|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d|<02>|<00>d<04>t|<00>}|<03><06>tjkr<>|<03> <09>}t
|j |d<05>|_ |j j <0A>|j<0F>|j <0C><10>q<>|<00>d<06>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d d|<02><00><02>d
S) u处理启用站点配置结果u启用成功: uNginx站点配置启用成功: r<>r<>rir<>u启用失败: uNginx站点配置启用失败: r<>N)r<>rr8r r<>rr<>r r<>r-rcr3r<>r@r<00>on_enable_configtest_resultr<74>r?r_r<>r(r(r)r<><00>s
  z%NginxTab.on_enable_site_config_resultcCsR|r|<00>d<01>t<01>d<02>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<04>|dd|<02><00><02>dS)u*处理启用站点后的配置测试结果r<E69E9C>u,Nginx站点配置启用后语法检查通过r<E8BF87>u.Nginx站点配置启用后语法检查失败: r<>r<>Nr<4E>r<>r(r(r)r<><00>s 
 z$NginxTab.on_enable_configtest_resultcCsv|js|<00>d<01>dSt|<00>}|<01><03>tjkrh|<01><06>}|<00>d<03>t|j|d<04>|_|jj <09>
|j <0B>|j<08> <0C>n
|<00>d<05>dS)rzr<>Nr<4E>rir<>) r3r<>rr<>r r<>r-rcr<>r@r<00>on_configtest_resultr<74>r<>r(r(r)r<><00>s

 zNginxTab.restart_nginxcCs<>|rd|<00>d<01>t|<00>}|<03><02>tjkrX|<03><05>}t|j|d<02>|_|jj <09>
|j <0B>|j<08> <0C>q<>|<00>d<03>n4|<00>d|<02><00><02>t <0A>d|<02><00><02>t<0F>|dd|<02><00><02>dS)u处理配置测试结果u5配置文件语法检查通过正在重启Nginx...rer<>r<>r<>r<>N)r<>rr<>r r<>r-rcr3<00>control_threadr@r<00>on_control_resultr<74>rr?r r_r<>r(r(r)r<><00>s
  zNginxTab.on_configtest_resultcCsv|js|<00>d<01>dSt|<00>}|<01><03>tjkrh|<01><06>}|<00>d<03>t|j|d<04>|_|jj <09>
|j <0B>|j<08> <0C>n
|<00>d<05>dS)r{r<>Nu正在查看Nginx状态...rhr<>) r3r<>rr<>r r<>r-rcr<>r@rr<>r<>r<>r(r(r)r<><00>s

 zNginxTab.check_nginx_statuscCsl|r4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|d|<02>n4|<00>d|<02><00><02>t<01>d|<02><00><02>t<03>|dd|<02><00><02>dS)u处理控制结果u操作成功: uNginx服务控制成功: r<>u操作失败: uNginx服务控制失败: r<>Nr<4E>r<>r(r(r)r<>szNginxTab.on_control_result)r.r/r0rrtr<>r<>r<>r<>r<>r<>r}r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r<>r1r(r(r&r)ros2 XO   



ro)<19>os<6F>sys<79>PySide6.QtWidgetsrrrrrrrr r
r r <00>PySide6.QtCorer r<00>logururrr2rQrcrkror(r(r(r)<00><module>s4 0I/A