Articles of apache 2.2

SSLRequire – 文件function

我在Apache 2.2和我能find的SSLRequire 文件function的小文档上遇到了麻烦。 我正在尝试使用SSLRequire检查请求中的客户端证书的电子邮件属性。 httpd.conf文件中的以下选项效果很好: SSLRequire %{SSL_CLIENT_S_DN_Email} in { "[email protected]" } 但正如我可以在文档中阅读,您可以使用filter的值列表。 从官方文档引用: file (文件名) – 这个函数接受一个string参数并扩展到文件的内容。 这对匹配正则expression式等内容特别有用。 所以,按照文档,我把以下内容放在httpd.conf文件中: SSLRequire %{SSL_CLIENT_S_DN_Email} in { file("/etc/httpd/mail-list") } 文件邮件列表只包含一行内容[email protected] (试图模拟没有file的选项)。 但是当我尝试访问我的HTTPS服务器时,我在日志中看到以下内容: Failed expression: %{SSL_CLIENT_S_DN_Email} in { file("/etc/httpd/mail-list") } 此消息通常在模式无法应用时出现。 有人可以帮我在这里,我怎样才能使用这个function?

mod_auth_radius通过https安全吗?

自述文件mod_auth_radius说: Using static passwords & RADIUS authentication over the web is a BAD IDEA. Everyone can sniff the passwords, as they're sent over the net in the clear. 如果我通过https服务页面,那么它会是安全的吗? 或者,这不是声明的含义?

阻止UserAgent libwww-perl与.htaccess不工作?

服务器在Apache上运行,并试图阻止libwww-perl,但不知道为什么它不工作。 我已经把以下内容放在我的.htaccess中,但是当我运行testing时,我还是得到了libwww-perl仍然没有被阻塞的通知。 RewriteEngine On RewriteBase / RewriteCond %{HTTP_USER_AGENT} libwww-perl.* RewriteRule .* – [F,L] 我在这里查看post如何创build.htaccess和阻止UserAgent libwww-perl? 但似乎他们正在运行IIS7,所以我不认为这里的答案适用。 我试过添加: SetEnvIfNoCase User-Agent "^Wget" bad_bot SetEnvIfNoCase User-Agent "^EmailSiphon" bad_bot SetEnvIfNoCase User-Agent "^EmailWolf" bad_bot SetEnvIfNoCase User-Agent "^libwww-perl" bad_bot <Location /> Order allow,deny Allow from all Deny from env=bad_bot </Location> 在另一篇文章中提到的是http://community.spiceworks.com/how_to/1443-how-to-block-libwww-perl ,但是这给我一个内部的服务器错误500 有任何想法吗? 亲切的问候

为什么我在Apache 2.4上设置了HTTP_X_FORWARDED_PROTO和未设置HTTPS?

最近我更新了我的网站:CMS(Drupal),它是OS(Ubuntu 14.04)和Apache(2.4.7)。 情况是,当在https://example.com/上冲浪时,任何PHP都无法检测到HTTPS。 $_SERVER['HTTPS']是空的, $_SERVER['SERVER_PORT']返回80.而这会导致一个问题,因为Drupal无法检测到HTTPS并提供HTTP文件(混合内容)。 唯一显示连接在HTTPS上的variables是HTTP_X_FORWARDED_PROTO,而Drupal不处理这个服务内容的设置。 <<<我没有反向代理或LAMP和Drupal以外的任何高级configuration,只有一个站点。 >>> 错了,我正在用CloudFlare运行我的网站。 考虑到我不想要Drupal解决scheme,我已经pipe理好了。 我想知道为什么Apache没有发送正确的SERVERvariables的PHP或者什么可能是我的configuration错误。 谢谢你的帮助。 <<<最终编辑>>> PD:我通过一个反向代理CloudFlare运行我的网站。 一旦你安装,很容易忘记。 检查我的答案,看看你必须设置的选项,以获得预期的SERVERvariables。

mod_rewrite激活,但错误日志

mod_rewrite正在我的系统上运行,但我仍然在apache2 error_logs错误。 me@server:# ls /etc/apache2/mods-enabled | grep rewrite rewrite.load rewrite.load的内容 LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so 错误日志 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/mod_rewrite.so.' – /usr/lib/php5/20090626/mod_rewrite.so.: cannot open shared object file: No such file or directory in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/mod_rewrite.so.' – /usr/lib/php5/20090626/mod_rewrite.so.: cannot open […]

Apache子域configuration不起作用

我有一个由其他人configuration的Debian 6服务器。 我被要求在该服务器上添加一个子域名。 我正确地configuration了DNS(用nslookup检查),在/var/www/创build了目录,然后添加了新的虚拟主机到/etc/apache2/sites-available (实际上我复制了一个现有子域的文件, ): <VirtualHost *:80> DocumentRoot "/var/www/mysub.example.com" ServerName mysub.example.com ServerAlias www.mysub.example.com ErrorLog …[path to file] CustomLog [path to file] RewriteEngine On #RewriteCond %{HTTP_HOST} ^mysub.example.com$ [NC] #RewriteRule ^(.*)$ http://www.mysub.example.com$1 [R=301,L] <Directory /var/www/mysub.example.com> AllowOverride All Require all granted </Directory> </VirtualHost> 然后,我使用a2ensite添加了主机,并重新启动了Apache,但域mysub.example.com正在redirect到beta.example.com这是我们的testing版生产站点。 奇怪的是, /etc/apache2/sites-available没有configurationbeta.example.com 。 我还应该做些什么来启用这个子域名? 我很确定example.com主机的configuration没有阻塞任何东西,因为我们也有一个configuration为这样的blog.example.com虚拟主机,它工作的很好。 编辑 一些debugging输出: root@xxx:~# apachectl -S VirtualHost configuration: wildcard […]

Apache Tomcatpipe理页面

暴露的Apache Tomcatpipe理页面是一个坏主意? 除了暴力破解之外,还有其他的安全风险吗?

SSH和反向代理

我有一个只有一个公共IP的服务器,其中访问仅限于443端口。 我已经configuration了一个用于访问https网页的apache反向代理。 我为网站#1configuration了https://one.example.com ,为网站#2configuration了https://two.example.com 。 我想允许命令ssh three.example.com进行ssh会话。 我怎样才能做到这一点?

从Apache的子域中删除www

我有一个域domain.org 我正在添加SSL,不幸的是,很多创build为“www.subdomain”的子域,创build证书到多个3级子域的方式更为昂贵。 是否有可能redirectwww.subdomain.domain.org subdomain.domain.org没有redirectwww.domain.org?

Apache proxypass将子域redirect到端口和path

好吧,我不知道该怎么说,但我会尽力解释我的情况。 我有一个运行debian的家庭服务器,其中包括运行“plex media server”。 我使用子域名远程访问我的服务器到我自己的域名,我们称之为“ mydomain.com ”。 我在子域“ home.mydomain.com ”(目前只是显示一些基本的html)上访问我的服务器,并访问“ home.mydomain.com:32400/web ”上的“Plex web界面”。 我想要做的是将子域名“ plex.mydomain.com ”redirect到“ home.mydomain.com:32400/web ”,以便于访问“plex界面”。 我已经设法在一半,但我不确定如何进行,或者如果这是事实可能做到的。 截至目前,这些是我的虚拟主机: <VirtualHost *:80> ServerAdmin webmaster@localhost ServerName home.mydomain.com DocumentRoot /var/www/home.mydomain.com/public_html <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride […]