AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题

问题[python](server)

Martin Hope
Chenghao Wang
Asked: 2024-08-26 14:46:53 +0800 CST

为什么“python3”和“python3.12”在软链接时版本不同?

  • 6

在 中/bin,我运行了:

$ ls -l python3
lrwxrwxrwx 1 root root 10 Aug 8 01:44 python3 -> python3.12
$ python3 --version
Python 3.12.3
$ python3.12 --version
Python 3.12.5

有人能解释为什么当它们是符号链接时一个是“Python 3.12.3 ”,另一个是“Python 3.12.5 ”吗?

python
  • 3 个回答
  • 590 Views
Martin Hope
user984993
Asked: 2023-06-22 09:56:15 +0800 CST

Ansible 将列表中的主机名发送到 python 脚本

  • 6

我想将主机名从 ansible 角色发送到 python 脚本。在我的主机文件中有 2 个主机 1ld900 和 1ld901。

我的角色如下

 ---
    - name:execute python
      script: writetoexcel.py {{ ansible_play_hosts_all | join(" ") }}
      args:
        executable: python3
      delegate_to: localhost

但是在传递它时,传递一些额外的“[”给python脚本。如下所示,列表中也只有一个索引。

[['1ld900','1ld901']]

如果没有连接,那么它会发送一些其他用粗体标记的垃圾字符

 "[['**[u**1ld900,', '**u**1ld901**]**']]

请帮助我将一个干净的列表发送到 python 脚本,如下所示

["1ld900","1ld901"]
python
  • 1 个回答
  • 25 Views
Martin Hope
George Y
Asked: 2023-04-11 21:09:00 +0800 CST

当'source'命令不起作用时如何自动激活python环境?

  • 5

\pyenv\1st\ 我在路径中设置了一个python环境

cd /
mkdir pyenv
python3 -m venv /pyenv/1st

激活此环境的官方方法是手动键入此命令:

. /pyenv/1st/bin/activate或者source /pyenv/1st/bin/activate,

这将导致在(1st)提示符前面并加载相应的 python 库。

我想保存输入并将此命令放入文件中mypy,但sh mypy不会1st在我手动输入该命令时将当前终端更改为 python 环境。将该命令添加到\etc\bashrc也无济于事。我听说该source命令将在子进程中结束sh mypy,但根本不会影响终端。

谁能解决这个问题?一个简单的命令或在我打开终端时自动加载该环境都会有所帮助。提前致谢。

python
  • 1 个回答
  • 17 Views
Martin Hope
norinori
Asked: 2022-11-03 05:58:52 +0800 CST

Ansible:“您需要在运行 json_query 过滤器之前安装‘jmespath’”,但它已安装

  • 5

我在 Python3 和 Enterprise Linux 8 (Rocky Linux 8) 之上使用 Ansible。
当我尝试使用json_query时,出现以下错误:

fatal: [ansible]: FAILED! => {"msg": "You need to install \"jmespath\" prior to running json_query filter"}

但是 Python 模块似乎已经安装:

# dnf install python3-jmespath
Last metadata expiration check: 1:44:38 ago on Mi 02 Nov 2022 12:54:28 CET.
Package python3-jmespath-0.9.0-11.el8.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!

# pip3 install jmespath
WARNING: Running pip install with root privileges is generally not a good idea. Try `pip3 install --user` instead.
Requirement already satisfied: jmespath in /usr/lib/python3.6/site-packages

我jmespath在交互式 Python 解释器中进行了测试,它运行正常,没有错误。这似乎可以确认 Python 模块已安装并且可以正常工作。

似乎只有在使用 Ansible 时才会出现此问题。
这是我用于测试的剧本:

---
- name: test json_query
  hosts: ansible
  vars:
    data:
      list1:
        one: 
          name: "hello"
        two: 
          name: "world"
  tasks:
    - name: search variable
      ansible.builtin.debug:
        var: item
      loop: "{{ data | community.general.json_query('list1[*].name') }}"

我错过了什么?

python
  • 2 个回答
  • 279 Views
Martin Hope
Rino Bino
Asked: 2022-10-01 13:46:05 +0800 CST

清理 Jenkins 工作区但保持 Python .venv 完整

  • 1

这个问题与在 Jenkins 管道中使用 Python + Poetry 项目以及如何保留.venv/


设想:

我有一个触发 Python 项目的 Jenkins Pipeline 作业。该项目使用诗歌在工作空间内的 .venv 中创建虚拟环境。每次后续作业运行,它将按预期重新使用 .venv ,因此每个 pip 包不需要在每次运行时重新下载(除非poetry.lock 文件中有差异)。一切都按预期工作。

我想使用 Jenkins Workspace Cleanup Plugin 对管道进行更改,我想破坏工作区文件但保留一些文件,包括 pip/poetry/venv 环境文件。这是为了允许它重新使用上一次运行中仍然存储在 .venv 中的 pip 包——就像它在今天的工作管道上一样。

完整的管道文件示例在这篇文章的底部,但这是我添加到现有管道中的 cleanWs() 部分的片段:

post {
  always {
    cleanWs(
      deleteDirs: true,
      notFailBuild: true,
      patterns: [
        [pattern: '.venv', type: 'EXCLUDE'],
        [pattern: '.venv/**', type: 'EXCLUDE']
      ]
    )
  }
}

这是问题:

  • 作业第一次运行时,它工作得非常好,工作区清理工作按预期工作。该.venv/目录按预期保留。

  • (问题)在作业的后续运行中,诗歌将重新安装所有包并且不会重新使用 .venv 目录:

    Creating virtualenv test in /data/jenkins_home/workspace/test-cleanup/.venv-- 这会强制重新下载每个包,即使.venv已经存在。在作业运行之前已确认/data/jenkins_home/workspace/test-cleanup/.venv已存在。

  • 这是奇怪的部分:如果我在 Jenkins 服务器上手动转到工作区目录并运行与预期完全相同的命令 ,它会被重用并且不会重新安装所有包。因此,它在作业中运行的处理方式有一些特定的内容,这使得它想要重新创建 .venv 目录。poetry install.venv

注意in-project = true已经为诗歌设置。所以它总是会尝试在当前工作目录中使用 .venv 。


例子:

这是一个按预期工作的简单示例管道。当poetry installstep 运行时,它不会在每次作业运行时重新下载所有包,只有第一次,或者如果有差异:

pipeline {

  agent any

  stages {

    stage("Prep Build Environment") {
      steps {

        script {
          scmVars = git branch: "main", poll: false, url: "[email protected]:my-org/private-repo.git"
        }

        sh "poetry install"
      }
    }
  }
}

这是添加的新Jenkinsfile 管道文件cleanWs()。添加后,项目将不再在每次运行时重新使用 .venv,即使它仍然存在:

pipeline {

  agent any

  stages {

    stage("Prep Build Environment") {
      steps {

        script {
          scmVars = git branch: "main", poll: false, url: "[email protected]:my-org/private-repo.git"
        }

        sh "poetry install"
      }
    }
  }

  post {
    always {
      cleanWs(
        deleteDirs: true,
        notFailBuild: true,
        patterns: [
          [pattern: '.venv', type: 'EXCLUDE'],
          [pattern: '.venv/**', type: 'EXCLUDE']
        ]
      )
    }
  }

}
python
  • 2 个回答
  • 60 Views
Martin Hope
questionto42standswithUkraine
Asked: 2022-08-25 11:07:07 +0800 CST

为什么使用 Python 的 openpyxl 模块写入几 MB 的工作簿会占用千兆字节的 RAM?

  • 0

我在旧服务器上发现了一个旧代码,该代码使用 openpyxl 从大约 20 列和 >60K 行的数据集中逐项写入 Excel 文件。它通过自己填充每个单元格来做到这一点(缓慢的方式,但也不那么慢,因为整个事情在几分钟后完成,并且单元格的格式):

cell = ws.cell('%s%s' % (col_idx, i + 3))
cell.value = unicode(value).encode("utf-8")
get_style(cell, "content", column_colors[col_id])

在大约 59K 行时,它崩溃了,控制台打印:

Killed

日志显示:

Received SIGTERM, shutting down.

SIGTERM 提示内存太少,以便服务器“从外部”终止任务。它是一个虚拟机。使用该命令检查内存free表明,通过将该小数据集(服务器上的 20 MB)写入 Excel,所有可用的 3.5 GB 都已被使用。

我在运行时检查了它,发现:500 MB 只是为了配置文件,每 10K 行 700 MB。写入数据集会导致:

需要 60 x 700 + 500 = 4700 MB 可用 RAM,而 VM 只有 3.5 GB。对于输出中这么小的文件,这应该足够了。最后的输出大约是一个 20 MB 的工作簿。输出的 Excel 版本应该是 2007 或 2010,因为它在 Python 2.73 上运行并且使用过时的旧代码。

为什么使用 Python 的 openpyxl 模块写入 20 MB 工作簿会占用千兆字节的 RAM?

python
  • 0 个回答
  • 57 Views
Martin Hope
David
Asked: 2022-03-29 14:20:48 +0800 CST

如何将 .env 文件调用到在 K8s 服务器上的 Docker 容器中运行的 Django 项目中?

  • 0

我很可能只需要一个正确方向的提示。

我有一个使用 gunicorn 和 nginx 运行 Django 应用程序的 docker 容器。此 Django 应用程序当前正在从 .env 文件中获取其环境变量。

FROM python:alpine
EXPOSE 8000

RUN apk update
RUN apk add --no-cache git gcc musl-dev libffi-dev libxml2-dev libxslt-dev gcc swig g++
RUN apk add --no-cache jpeg-dev zlib-dev freetype-dev lcms2-dev openjpeg-dev tiff-  dev tk-dev tcl-dev
RUN apk add --no-cache bash ffmpeg libmagic
RUN python3 -m pip install --upgrade pip
RUN python3 -m pip install --upgrade setuptools

RUN mkdir /opt/app
WORKDIR /opt/app
COPY . .
RUN python3 -m pip install /root/d12f/

RUN pip3 install -r requirements.txt
RUN pip3 install gunicorn
CMD sh -c 'gunicorn --conf python:app.gunicorn_conf app.wsgi --bind 0.0.0.0:8000 --reload --log-level info --access-logfile - --timeout 360 --error-logfile -'

当然,repo 中没有 .env 文件,因为这会带来安全风险。

Docker 映像由 github 创建并存储在私有 GitHub 包中。稍后,这个 docker 镜像被用于在 Kubernetes 上运行。

我正在尝试找到将 .env 文件放入的最佳解决方案

/opt/app/app/.env

作为本地文件。

如果可能的话,我宁愿不使用全局环境变量。

感谢您的任何建议。

django python docker kubernetes github
  • 2 个回答
  • 139 Views
Martin Hope
stf
Asked: 2022-02-26 14:49:44 +0800 CST

GNU Mailman3 + Postfix:550 5.1.1 <root@localhost>:收件人地址被拒绝:本地收件人表中的用户未知

  • 0

我只是想用 Postfix+Nginx+Postgres 运行 GNU Mailman3。这是最新的 GNU/Linux Debian 稳定版,所以我刚刚apt-get安装mailman3-full并对配置文件进行了一些标准更改。Nginx 部分很好,SSL 工作正常,我可以从我的网络浏览器访问 Postorius 和 Hyperkitty。但是当尝试以管理员身份登录时,我收到以下错误:

ERROR 2022-02-25 21:39:55,302 118475 django.request Internal Server Error: /accounts/login/
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/django/core/handlers/exception.py", line 34, in inner
    response = get_response(request)
  File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 115, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "/usr/lib/python3/dist-packages/django/core/handlers/base.py", line 113, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 71, in view
    return self.dispatch(request, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/django/utils/decorators.py", line 45, in _wrapper
    return bound_method(*args, **kwargs)
  File "/usr/lib/python3/dist-packages/django/views/decorators/debug.py", line 76, in sensitive_post_parameters_wrapper
    return view(request, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/allauth/account/views.py", line 146, in dispatch
    return super(LoginView, self).dispatch(request, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/allauth/account/views.py", line 74, in dispatch
    response = super(RedirectAuthenticatedUserMixin, self).dispatch(
  File "/usr/lib/python3/dist-packages/django/views/generic/base.py", line 97, in dispatch
    return handler(request, *args, **kwargs)
  File "/usr/lib/python3/dist-packages/allauth/account/views.py", line 102, in post
    response = self.form_valid(form)
  File "/usr/lib/python3/dist-packages/allauth/account/views.py", line 159, in form_valid
    return form.login(self.request, redirect_url=success_url)
  File "/usr/lib/python3/dist-packages/allauth/account/forms.py", line 195, in login
    ret = perform_login(
  File "/usr/lib/python3/dist-packages/allauth/account/utils.py", line 175, in perform_login
    send_email_confirmation(request, user, signup=signup, email=email)
  File "/usr/lib/python3/dist-packages/allauth/account/utils.py", line 346, in send_email_confirmation
    email_address.send_confirmation(request, signup=signup)
  File "/usr/lib/python3/dist-packages/allauth/account/models.py", line 62, in send_confirmation
    confirmation.send(request, signup=signup)
  File "/usr/lib/python3/dist-packages/allauth/account/models.py", line 169, in send
    get_adapter(request).send_confirmation_mail(request, self, signup)
  File "/usr/lib/python3/dist-packages/allauth/account/adapter.py", line 464, in send_confirmation_mail
    self.send_mail(email_template, emailconfirmation.email_address.email, ctx)
  File "/usr/lib/python3/dist-packages/allauth/account/adapter.py", line 136, in send_mail
    msg.send()
  File "/usr/lib/python3/dist-packages/django/core/mail/message.py", line 306, in send
    return self.get_connection(fail_silently).send_messages([self])
  File "/usr/lib/python3/dist-packages/django/core/mail/backends/smtp.py", line 110, in send_messages
    sent = self._send(message)
  File "/usr/lib/python3/dist-packages/django/core/mail/backends/smtp.py", line 126, in _send
    self.connection.sendmail(from_email, recipients, message.as_bytes(linesep='\r\n'))
  File "/usr/lib/python3.9/smtplib.py", line 885, in sendmail
    raise SMTPRecipientsRefused(senderrs)
smtplib.SMTPRecipientsRefused: {'root@localhost': (550, b'5.1.1 <root@localhost>: Recipient address rejected: User unknown in local recipient table')}
[pid: 118475|app: 0|req: 35/35] 2001:xxxx:xxxx:xxxx:xxxx:xxxx () {62 vars in 1133 bytes} [Fri Feb 25 21:39:55 2022] POST /accounts/login/ => generated 1156 bytes in 173 msecs (HTTP/1.1 500) 5 headers in 182 bytes (1 switches on core 1)

在 Postfix 日志文件中:

Feb 25 21:39:55 vps-xxx postfix/smtpd[122820]: connect from localhost[::1]
Feb 25 21:39:55 vps-xxx postfix/smtpd[122820]: NOQUEUE: reject: RCPT from localhost[::1]: 550 5.1.1 <root@localhost>: Recipient address rejected: User unknown in local recipient table; from=<root@MYDOMAIN> to=<root@localhost> proto=ESMTP helo=<vps-xxx>
Feb 25 21:39:55 vps-xxx postfix/smtpd[122820]: disconnect from localhost[::1] ehlo=1 mail=1 rcpt=0/1 rset=1 quit=1 commands=4/5

我想:也许我的本地收件人表不知何故坏了?但我可以使用以下方式发送邮件mail:

$ mail -r 'root@localhost' -s 'just a test' 'root@localhost'

它工作得很好:

Feb 25 21:44:12 vps-xxx postfix/pickup[124104]: 9ABB540516: uid=1000 from=<root@localhost>
Feb 25 21:44:12 vps-xxx postfix/cleanup[124763]: 9ABB540516: message-id=<20220225214412.9ABB540516@MYDOMAIN>
Feb 25 21:44:12 vps-xxx opendkim[14611]: 9ABB540516: no signing table match for 'root@localhost'
Feb 25 21:44:12 vps-xxx opendkim[14611]: 9ABB540516: no signature data
Feb 25 21:44:12 vps-xxx postfix/qmgr[118558]: 9ABB540516: from=<root@localhost>, size=412, nrcpt=1 (queue active)
Feb 25 21:44:12 vps-xxx postfix/local[124765]: 9ABB540516: to=<root@localhost>, relay=local, delay=0.04, delays=0.03/0.01/0/0, dsn=2.0.0, status=sent (delivered to maildir)
Feb 25 21:44:12 vps-xxx postfix/qmgr[118558]: 9ABB540516: removed

我root确实可以在 's Maildir 中看到它。

有任何想法吗?

如果我没记错root@localhost的话,是我admin在dpkg-reconfigure. 我以前从未使用过 GNU Mailman3,但我猜这封电子邮件一定是登录通知或类似的东西(您也可以通过send_email_confirmation函数名称猜测它)。如果我输入了错误的密码,一切都很好(我只是在 Web UI 中得到一个很好的错误),所以只有当密码正确时才会发生这种情况。

谢谢!

email postfix python mailman
  • 1 个回答
  • 143 Views
Martin Hope
Zareh Kasparian
Asked: 2022-02-13 11:40:35 +0800 CST

python中字符串的多部分选择

  • 1

我有一个日志文件如下:

12-02-2022 15:18:22 +0330 SOCK5.6699 00000 user144 97.251.107.125:38605 1.1.1.1:443 51766 169369 0 CONNECT 1.1.1.1:443
12-02-2022 15:18:27 +0330 SOCK5.6699 00094 user156 32.99.193.2:51242 1.1.1.1:443 715 388 0 CONNECT 1.1.1.1:443
12-02-2022 15:18:56 +0330 SOCK5.6699 00000 user105 191.184.66.98:40048 1.1.1.1:443 18105 29029 0 CONNECT 1.1.1.1:443
12-02-2022 15:18:56 +0330 SOCK5.6699 00000 user105 191.184.66.98:40070 1.1.1.1:443 674 26805 0 CONNECT 1.1.1.1:443
12-02-2022 15:20:24 +0330 SOCK5.6699 00000 user143 112.199.63.119:60682 1.1.1.1:443 475 445 0 CONNECT 1.1.1.1:443
12-02-2022 15:20:37 +0330 SOCK5.6699 00000 user105 191.184.66.98:40102 1.1.1.1:443 12913 18780 0 CONNECT 1.1.1.1:443
12-02-2022 15:20:42 +0330 SOCK5.6699 00000 user143 112.199.63.119:60688 1.1.1.1:443 4530 34717 0 CONNECT 1.1.1.1:443
12-02-2022 15:20:44 +0330 SOCK5.6699 00000 user127 212.167.145.49:2972 1.1.1.1:443 827 267 0 CONNECT 1.1.1.1:443

我的目标是提取此日志文件的两个部分:

  1. 用户名
  2. 用户源IP地址

以下是所需数​​据部分的示例。

2022 年 2 月 2 日 15:18:22 +0330 SOCK5.6699 00000用户 144 97.251.107.125 :38605 1.1.1.1:443 51766 169369 0 连接 1.1.1.1:443

所以我编写了一个 Python 脚本来提取这两个项目并将它们存储在单独的列表中,然后使用 zip 函数将它们连接起来。

import pprint
import collections

iplist=[]
for l in data:
    ip_port=l[53:71]
    iplist.append(ip_port.split(':')[0])


userlist=[]
for u in data:
    user=u[42:52]
    userlist.append(user.replace(" ", ""))

a=list(zip(iplist,userlist))
most_ip=collections.Counter(a).most_common(5)
pprint.pprint(most_ip)

这段代码工作正常,我可以使用相应的用户名获取最常用的 ip。还需要提到我没有使用re模块,因为它列出了第二个 IP(目标 IP 是 1.1.1.1-我不关心它)

问题: 除了我编写代码的方式之外,还有其他方式(更简洁)吗?

python
  • 2 个回答
  • 32 Views
Martin Hope
BlueDogRanch
Asked: 2022-02-10 10:10:18 +0800 CST

Apache2:为什么我会收到 403 Forbidden 错误?

  • 0

这几天我一直在搞砸:(

为什么我在 example.com/contact 上收到 403 Forbidden 错误?

这是文件/文件夹权限、Apache 用户、虚拟主机还是 Python 问题?

我正在尝试在 /contact 上运行 Django 应用程序,但第一个问题是 403 错误。

  • 我正在运行 Ubuntu 20.04.3 LTS
  • Apache 2.4.41 已安装并正在运行
  • 安装了 Python 3.8 和 Django
  • libapache2-mod-wsgi-py3 已安装并启用
  • apachectl configtest语法OK
  • 所有文件 chown 到www-data:www-data
  • 目录 chmod +x
  • example.com/index.html 有效

/var/log/apache2/access.log是空的

/var/log/apache2/error.log包含:

[mpm_prefork:notice] [pid 69090] AH00163: Apache/2.4.41 (Ubuntu) OpenSSL/1.1.1k mod_wsgi/4.6.8 Python/3.8 已配置——恢复正常操作

[核心:通知] [pid 69090] AH00094:命令行:'/usr/sbin/apache2'

根目录下的 .htaccess 文件有

 RewriteEngine on
 ServerSignature Off
 Options All -Indexes

这是我的 public_html 文件结构:

在此处输入图像描述

/etc/apache2/sites-available/default-ssl.conf:

  <IfModule mod_ssl.c>
    <VirtualHost _default_:443>
        ServerAdmin webmaster@localhost
    
        DocumentRoot /var/www/html
    
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
    
        SSLEngine on
    
        SSLCertificateFile  /etc/ssl/certs/ssl-cert-snakeoil.pem
        SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
    
        <FilesMatch "\.(cgi|shtml|phtml|php)$">
                    SSLOptions +StdEnvVars
        </FilesMatch>
        <Directory /usr/lib/cgi-bin>
                    SSLOptions +StdEnvVars
        </Directory>
    
    
    Alias /static /var/www/html/example.com/public_html/contact/static
    Alias /media /var/www/html/example.com/public_html/contact/media

    <Directory /var/www/html/example.com/public_html/contact/static>
        Require all granted
    </Directory>

    <Directory /var/www/html/example.com/public_html/contact/media>
        Require all granted
    </Directory>

    WSGIScriptAlias /contact/contact /var/www/html/example.com/public_html/contact/contact/wsgi.py

    WSGIDaemonProcess contact python-home=/var/www/html/example.com/public_html/contact/contact

    WSGIProcessGroup contact

    WSGISocketPrefix run/wsgi

    <Directory /var/www/html/example.com/public_html/contact/contact>
        <Files wsgi.py>
            Require all granted
            AllowOverride None
            Allow from all
        </Files>
    </Directory>

        </VirtualHost>
</IfModule>
ubuntu virtualhost python apache-2.4
  • 1 个回答
  • 1189 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve