标签: apache-httpd

无法访问 Web 服务器,但可以通过 ssh 连接到它

我有一台 Ubuntu 服务器,但有一些我无法理解的奇怪事情。

我无法通过 IP 地址 ping 到服务器,但我可以 ssh 到它。我可以通过命令行访问服务器内的 apache 服务器,但我无法在我的 Windows 浏览器中访问。

我现在需要检查什么样的设置?

networking ubuntu ping apache-httpd

6
推荐指数
2
解决办法
3万
查看次数

Centos 7 中的模块 prefork.c 设置在哪里?

我曾经在 etc/conf/httpd.conf 中编辑设置以获得更好的内存性能

<IfModule prefork.c>
StartServers       2
MinSpareServers    3
MaxSpareServers    3
ServerLimit       15
MaxClients        15
MaxRequestsPerChild  1000
</IfModule>
Run Code Online (Sandbox Code Playgroud)

现在,在 64 位 Centos 7 上,只有 /etc/conf.modules.d/10-php.conf 中的 httpd.conf 中没有设置:

<IfModule prefork.c>
  LoadModule php5_module modules/libphp5.so
</IfModule>
Run Code Online (Sandbox Code Playgroud)

那么在 Centos 7 中的这个新设置是如何实现同样的事情的呢?

centos apache-httpd

6
推荐指数
1
解决办法
6820
查看次数

配置 Apache 以要求客户端证书

我想与 apache 网络服务器实现相互身份验证(双向)。

参考
1.无法使用 CA 根密钥签署 CSR
2.添加 CA 签署的客户端证书时 Firefox 错误消息

经过许多步骤:

  1. 通过编辑 ssl.conf 将 Apache 2.0 SSL 配置为接受 https。
  2. 使用 OpenSSL 创建证书颁发机构并将其导入 Web 浏览器[链接]
  3. 创建 Web 服务器证书并由 CA 签名并将其作为 apache 证书。[关联]
  4. 创建客户端证书并由 CA 对其进行签名并将其导出为 PKCS#12 格式[link]并将其导入到 Web 浏览器

我现在可以使用 https 访问服务器,但对于所有用户。
我只希望获得 CA 签名证书的授权用户能够访问我服务器上的网页。我需要/etc/httpd/conf.d/ssl.conf 按照本教程编辑 ssl.conf ,我对 ssl.conf 做了这个:

SSLVerifyClient require
SSLVerifyDepth 2
Run Code Online (Sandbox Code Playgroud)

更新#1:

当然,我已将证书设置为由 CA 签名的证书:

#   Server Certificate:
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /var/www/sslConf/server.crt
#   Server Private …
Run Code Online (Sandbox Code Playgroud)

authentication certificates apache-httpd

5
推荐指数
1
解决办法
2195
查看次数

Apache 2.4 不会重新加载,我的配置有问题吗?

我试图让一个VirtualHost用 Apache 2.2 编写的文件在 Apache 2.4 中工作,虽然我对它做了一些更改,但它没有通过 Apache configtest. 这个想法是在本地测试站点。这是在 Apache 2.2 中显然有效的原始文件:

<VirtualHost local.in2014.mini.debconf.org:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www/in2014.mini/website/

    <Directory />
        Options +FollowSymLinks +Includes
        AllowOverride None
    </Directory>

    <Directory /var/www/in2014.mini/website/>
        Options +Indexes +FollowSymLinks +MultiViews +Includes
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

这些是我为更改为 Apache 2.4 所做的更改:

$ cat /etc/apache2/sites-enabled/minidebconfindia.conf
<VirtualHost mini:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www/html/in2014.mini/website

    <Directory />
        Options FollowSymLinks +Includes
        Require all granted
    </Directory>

    <Directory /var/www/html/in2014.mini/website/>
        Options Indexes FollowSymLinks MultiViews +Includes
        Require all granted
    </Directory>
</VirtualHost> …
Run Code Online (Sandbox Code Playgroud)

debian apache-httpd

5
推荐指数
1
解决办法
7222
查看次数

通过 mod_ssl 在 Apache 中运行时的自定义 OpenSSL 引擎

我修改了 myopenssl.cnf为某些操作指定了自定义引擎。如果我openssl直接通过二进制文件它工作正常,但如果我libssl从另一个程序加载它似乎根本不使用该配置文件,所以我的引擎不可用。我最终希望引擎可以通过 Apache 使用mod_ssl。我想我可以使用SSLCryptoDeviceApache 配置指令来指定要使用的引擎,但是由于它没有读取我的 OpenSSL 配置,所以它没有加载我的自定义引擎,所以它不可用。有没有办法告诉 OpenSSL(直接或可能通过 Apache)加载我的引擎?

openssl apache-httpd

5
推荐指数
1
解决办法
990
查看次数

Apache 不读取对 PHP 文件的更改

我正在使用 Apache 和 PHP 在 CentOS6 服务器上进行开发。当我对 PHP 文件进行更改(并保存)时,似乎 apache 没有读取更改后的文件 - 它仍在处理我的旧 .php 文件。5-10 分钟后,它将开始使用新文件。

有人能告诉我如何强制 Apache 立即获取更改的 .php 文件吗?


更新:我将文件移到 apache 服务器上,但问题仍然存在(这不是 NFS 问题)。因此,似乎 Apache 只是在几分钟内没有读取更改后的文件 困惑...

mount php apache-httpd

5
推荐指数
1
解决办法
2万
查看次数

Debian、Apache、mod_userdir、suexec、php-cgi

我设法使用 php-cgi 和 userdir 配置了 Apache,我可以使用domain.com/~userN/. 但是一切都在 www-data 用户下运行。我想启用suexec运行.php和其他 CGI 文件。

我的问题是如何让suexec一起工作userdir模块?如果用户目录不在一个路径下,例如/home/*/*/userN/public_html/home/*/userN/public_html. 下面的所有内容都public_html应该以拥有该目录的用户身份运行。Apache 文档对我来说不够清楚,我无法完成这项工作。

操作系统是 Debian Jessie,安装的软件包是apache2-suexec-custom.

apache-httpd

5
推荐指数
0
解决办法
500
查看次数

无法在 Apache + mod_nss 中禁用 SSLv3

我正在尝试通过 Apache (RHEL 7) 中的 mod_nss 实现 TLS。根据文档,我已经安装了mod_nss并删除了mod_ssl

我遵循了文档中概述的步骤(参见上面的链接),特别是确保NSSProtocol指令读取如下(根据文档,这将禁用除 TLS 版本 1 及更高版本之外的所有 SSL 和 TLS 协议版本):

NSSProtocol TLSv1.0,TLSv1.1
Run Code Online (Sandbox Code Playgroud)

然后我重新启动了Apache并测试是否启用了SSLv3:

openssl s_client -connect localhost:443 -ssl3
Run Code Online (Sandbox Code Playgroud)

返回:

[root@box1 ~]# openssl s_client -connect localhost:443 -ssl3
CONNECTED(00000003)
139894684407712:error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number:s3_pkt.c:339:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 5 bytes and written 7 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported …
Run Code Online (Sandbox Code Playgroud)

rhel ssl apache-httpd

5
推荐指数
1
解决办法
1605
查看次数

如何在 OpenSuSE 13.1 上为 Apache2 配置 SSL

我在虚拟托管服务器上安装了 OpenSuSE,运行多个虚拟网站。在正常的 http 上一切正常。除了 http 之外,我现在还想在 https 上运行我的一个虚拟站点。因此,我购买了 SSL 证书。我已将我的证书文件复制到服务器:

SSLCertificateFile    /etc/apache2/crt/site.crt
SSLCertificateKeyFile /etc/apache2/key/my.key
SSLCACertificateFile  /etc/apache2/ca.txt
Run Code Online (Sandbox Code Playgroud)

我在文件“/etc/sysconfig/apache2”中的 Apache 模块中启用了 SSL

APACHE_MODULES="rewrite actions alias auth_basic authn_file authz_host authz_groupfile  authz_user autoindex cgi dir env expires include log_config mime negotiation setenvif ssl userdir php5 reqtimeout authn_core authz_core alias_module headers"
Run Code Online (Sandbox Code Playgroud)

在 /etc/apache2 我的 listen.conf 说:

Listen 80
<IfDefine SSL>
    <IfDefine !NOSSL>
        <IfModule mod_ssl.c>
            Listen 443
        </IfModule>
    </IfDefine>
</IfDefine>
Run Code Online (Sandbox Code Playgroud)

我的 vhost 配置文件说:

<IfDefine SSL>
<IfDefine !NOSSL>
<VirtualHost *:443>
        DocumentRoot "/srv/www/vhosts/dialogis-mediation.de/"
        ServerName dialogis.coach:443
        ServerAdmin juergen.tolksdorf@mac.com
        ErrorLog …
Run Code Online (Sandbox Code Playgroud)

ssl apache-httpd

5
推荐指数
2
解决办法
8776
查看次数

如何在不执行干净的情况下分解 (Debian) Apache

我正在尝试在 Debian 上编辑一个 Apache 模块(严格来说,我是在 Raspbian Jessie-Lite 上这样做的),并且大致遵循Debian 构建说明

$ mkdir -p ~/src/debian; cd ~/src/debian
$ apt-get source apache2-bin
$ cd apache2-2.4.10
$ debuild -b -uc -us
Run Code Online (Sandbox Code Playgroud)

在旧的原始 Pi 上,构建过程大约需要一个半小时。这很好。一次!但我相信构建过程正在执行make clean,因此在对单个 mod_*.c 文件进行小幅编辑后,它想要重建整个东西,这有点减慢了我的开发速度!

我尝试添加-dcdebuild命令中,但它没有构建任何东西。我什至尝试删除目标 mod_*.so 文件以“鼓励”它重建它,但仍然没有!

更新 2016-08-21:将 -nc 添加到 debuild 命令不会导致模块重新编译。这是该命令的输出:

$ debuild -b -uc -us -nc
 dpkg-buildpackage -rfakeroot -D -us -uc -b -nc
dpkg-buildpackage: source package apache2
dpkg-buildpackage: source version 2.4.10-10+deb8u5
dpkg-buildpackage: source distribution jessie-security
dpkg-buildpackage: source changed by Salvatore …
Run Code Online (Sandbox Code Playgroud)

compiling c debian raspbian apache-httpd

5
推荐指数
2
解决办法
3551
查看次数