我正在使用来自必须在Windows上使用Apache的供应商提供的产品。 我们有我们自己的CA. 为了命名的目的: AppServer – Server2012r2 – Apache 2.4 OldCertsha1 – Server2012r2 NewCertsha2 – Server2012r2 我使用下面的两个命令在AppServer上创build了CSR。 genrsa –des3 –out name.sub.domain.com.key 2048 req –new –key name.sub.domain.com.key –out name.sub.domain.com.csr 这一切顺利 req -noout -text -in name.sub.domain.com.csr Certificate Request: Data: Version: 0 (0x0) Subject: C=xx, ST=xx, L=xx, O=xx, OU=xx, CN=name.sub.domain.com Subject Public Key Info: Public Key Algorithm: rsaEncryption RSA […]
我的网站,可以说abc.com是在http上工作,而不是在https上。 在将这些行添加到httpd.conf之后, ServerName abc.com DocumentRoot "c:/wamp/www/" Listen 443 SSLEngine on SSLCertificateFile C:/MyPath/MyCertcer SSLCertificateKeyFile C:/MyPath/MyKey.key SSLCACertificateFile C:/MyPath/MyCAA.crt 我的网站开始在https上工作,但在http上停止。 这些设置不在虚拟主机或目录中。 我正进入(状态, Bad Request Your browser sent a request that this server could not understand. Reason: You're speaking plain HTTP to an SSL-enabled server port. Instead use the HTTPS scheme to access this URL, please. Apache/2.4.9 (Win64) OpenSSL/1.0.1g […]
背景 我有两个独立的服务器。 Server 1是我的主服务器,客户端将直接连接到该服务器,并托pipe我的大部分内容。 Server 2包含Server 1上不可用的特定数据。 Server 2是一个完全独立的实例,完全独立的URL。 Server 1安装了PHP ,我使用file_get_contents()从Server 2检索信息(类似于Googlebuild议对服务器进行reCaptcha的ping操作)。 在截图(下面)中, 是我关心的服务器到服务器的连接。 现在,它使用https作为连接,但我想知道是否有必要。 问题 首先,我需要使用SSL来连接Server 1和Server 2吗? 其次,我是否应该使用HTTP进行连接,而不pipe它是否受SSL保护? 我听说过CURL这个词,这是否会成为替代品?
我在Ubuntu服务器14.04上安装了Apache 2.4的全新安装CGI脚本。 Apache不断回答403 Forbidden,如果对我来说,configuration文件是好的。 CGI是Monitorix的前端,一个用Perl编写的系统监视工具。 configuration文件/etc/apache2/conf-enabled/monitorix.conf是: Alias /monitorix /var/lib/monitorix/www ScriptAlias /monitorix-cgi /var/lib/monitorix/www/cgi <Directory /var/lib/monitorix/www/cgi/> DirectoryIndex monitorix.cgi Options ExecCGI <IfModule mod_authz_core.c> # Apache 2.4 Require all granted </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order deny,allow Allow from all </IfModule> </Directory> /var/lib/monitorix/www和/var/lib/monitorix/www/cgi所有文件至less都具有读取权限。 每次我尝试从URL /monitorix访问,在我的Apache日志中,我看到行: [Mon Sep 01 06:57:52.995680 2014] [authz_core:error] [pid 17145] [client xxxx:58879] AH01630: client denied […]
我们正在将我们的商店转移到一个新的IP地址的服务器,我试图确定是否有一种方法可以最大限度地减less在DNS传播过程中“看到”我们的旧网站的用户数量。 目前,计划一旦开始迁移,旧网站将进入维护模式,以便用户在登陆旧网站时将看到503消息。 基本上我试图解决这个用例: 服务器移动完成,我们已经将域Alogging更新为新的IP地址。 在DNS更改完全传播之前,用户访问我们的站点并将其导向旧服务器。 有什么方法可以表明我们的网站现在生活在旧服务器上的用户的新IP地址上? 我知道我可以通过使用新的IP地址,而不是域redirect他们,但我宁愿不使用该解决scheme,如果可能的话。 有没有什么方法可以表明example.com现在应该映射到服务器级别的111.111.111.111 ? 从我见过的关于处理DNS传播的其他答案,我怀疑这是不可能的。 如果这是不可能的 ,我很好奇,如果有一个很好的理由。 看起来好像有一个机制可以使服务器能够告诉用户他们请求的域现在应该映射到一个不同的IP地址。
我想在Apache下的.htaccess文件中使用mod_rewrite进行如下操作: 如果接收到任何文件或path的请求,例如foo.txt或foo/bar ,请检查public子目录中是否存在此文件,例如public/foo.txt或public/foo/bar 。 它如果只是显示该文件。 除此以外 redirect到主控制器index.php 我试图解决的是这样的: <IfModule mod_rewrite.c> RewriteEngine On # Don't rewrite requests for files in the 'public' directory RewriteRule ^(public)($|/) – [L] # For all other files first check if they exist in 'public' RewriteCond %{DOCUMENT_ROOT}/public%{REQUEST_URI} -f RewriteRule ^ public%{REQUEST_URI} [L] # Let 'index.php' handle everything else RewriteRule . index.php [L] […]
因此,为了后代,我试图configuration我的服务器,以便即使有人试图去http:// domain.com:443,他们将被正确地redirect到该网站的https版本(https:// domain.com)。 当testing像http:// domain.com:443之类的东西时,它不会正确地redirect到https:// domain.com,而是使用下面的内容打开400错误请求页面: 错误的请求 您的浏览器发送了此服务器无法理解的请求。 原因:您正在向使用SSL的服务器端口说纯HTTP。 请使用HTTPSscheme访问此URL。 Apache / 2.4.18(Ubuntu)服务器在sub.domain.com端口443 我尝试在<VirtualHost *:80> 000-default.conf中包含以下行: RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{SERVER_NAME}/$1 [R,L] 但它没有工作。 所有域,子域和服务器IP本身都会出现此问题。 可能有关,试图做一个letsencrypt的干运行返回以下内容: Domain: domain.com Type: connection Detail: Failed to connect to 123.123.123.123:443 for TLS-SNI-01 challenge 针对启用网站的文件夹中列出的每个域。
有没有一个标准的头,服务器可以发送“普通”的HTTP模式,以提示HTTPS可用和推荐的浏览器? 我已经使用了HSTS机制,告诉浏览器不要切换回HTTP,但只有在已经build立安全连接时才能工作。 目前我在Apache中使用Rewrite的东西,使客户端使用HTTPS,但我想减less强制替代。
操作系统:Debian 8.2,Apache:Apache / 2.4.10(Debian) 自从两天以后,我的apache2“突然”开始在100%cpu上运行。 这个过程并没有停止,我已经运行kill -9在早上停止。 service apache2 stop不起作用来停止实例。 我想这一切都开始时,我在我的机器上安装kolab(kolab.org)。 我之前也安装了自己的云,并做了一些较小的安装。 否则,Debian安装非常“新鲜”。 但是,安装kolab后,晚上才开始。 这个问题似乎是在早晨6点才能正常启动的。 至less日志暗示了这个方向。 如果我手动执行: apachectl -k graceful我得到这个在100%cpu上运行的apache2进程。 service apache2 restart不会触发这个问题! 我不知道如何进一步发现问题。
我希望我的问题是关于服务器故障的主题。 如果不是的话,请原谅我,指点我正确的方向。 是否有可能阻止一个网站与HTTPS? 我有一个网站,我只想提供给自己。 当然,我可以在系统中以编程方式解决这个问题,但是我问自己,是否可以强制HTTPS在端口443上请求某个证书,如果没有提供,那么返回某种404错误或类似的错误。 换句话说,我需要在我的客户端系统上拥有适当的证书才能访问该网站。 这通常是可能的吗? 如果是的话,有人可以指出我的文档吗? 也许对于Apache来说,如果存在?