Articles of apache 2.2

通过密码保护apache2服务器状态处理程序

在我的apache2服务器,我访问/server-status来检查我的networking服务器的当前状态。 我发现mods-available / status.conf包含负责显示状态的片段。 <Location /server-status> SetHandler server-status Order deny,allow Deny from all Allow from localhost ip6-localhost </Location> 我的问题是我怎样才能使它不仅本地主机,而且还有authentication的远程主机?

需要工作指南来安装最新的Apache或Nginx,PHP和MySQL的生产

好吧,我被告知现在安装Apache / Nginx,PHP,MySQL的最好和最简单的方法是使用apt-get或类似的包pipe理器为你的特定发行版插入软件。 这样做的好处是您可以使用可靠的软件包,并且可以在生产中轻松更新它们。 现在我正在使用Ubuntu 12.04,并且热衷于这个软件的最新版本: Apache 2.4.x 或 Nginx 1.2.x PHP 5.4.x MySQL 5.5.x 然而,我所遇到的每一个指南似乎都让我安装所有这些东西,但是在完成所有configuration之后,它并没有结束工作,我不知道出了什么问题或者如何解决这个问题。 到目前为止,我已经想出了: 1)使用这些说明安装dotdeb存储库: 2)安装Apache 2.2.22,PHP 5.4.3,MySQL 5.5.24: aptitude install mysql-server apache2 libapache2-mod-php5 php5-mysql php5-apc php5-curl 3)安装mod-rewrite软件包: a2enmod rewrite 现在这个工作,我可以得到一个phpinfo()运行并正确显示并连接到数据库。 然而,这只能得到我的Apache 2.2.22(我宁愿2.4.x为最新的速度增加),也无法得到mod重写工作,它只是拒绝redirect到index.php所以只有主页的作品。 我有htaccess的代码设置为: RewriteEngine on RewriteBase / # Forward any url without the listed extentions to index.php RewriteRule !\.(js|css|ico|txt|gif|jpg|jpeg|png|ttf)$ index.php 我不知道,这是Ubuntu的第五次安装,我现在不得不做,试图得到这个工作,但仍然在广场一个,没有得到任何地方。 […]

重写规则将所有子页面redirect到单个页面?

我有两个文件/etc/apache2/sites-available/foo和/etc/apache2/sites-available/foo_maintenance 我在/etc/apache2/sites-available/foo使用的重写规则是 <Directory /var/www/public_html> Options +FollowSymlinks RewriteOptions inherit RewriteEngine on # RewriteCond %{HTTP_HOST} ^mysite\.com [NC] RewriteRule ^(.*)$ http://www.mysite.com/$1 [R=301,L] </Directory> 让所有的mysite.com/*redirect到www.mysite.com 当我把我的网站下载维护,如果用户导航到像mysite.com/subdir/something.php网站的子页面,我想redirect到www.mysite.com所以index.html维护页面将被显示。 什么是重写规则redirect所有stream量从任何子页面www.mysite.com ?

如何修改使用NamedVirtualHosts的每个虚拟主机上运行的端口apache2?

我目前正在工作的Apacheconfiguration一切运行在端口80(通常),但我要添加一个节点代理到前端,这将监听80并转发到其他Web服务器根据主机请求。 这时我的httpd.conf文件是空的,ports.conf文件如下所示 NameVirtualHost *.80 Listen 80 在我的网站内 – 可用我有名为“博客”的configuration文件 – 该文件具有特定的虚拟主机 <VirtualHost *:80> ServerName www.mysite.com:80 DocumentRoot /www/blog.mysite.com/current/static 我应该修改什么,如果我只是想让Apache像现在一样工作 – 除了在9000端口? 下面列出了Apache的信息 – 在Ubuntu 12.04上新安装 root@mybox:/etc/apache2# apache2 -v Server version: Apache/2.2.22 (Ubuntu) 更新1 如果我将每个vhost和ports.conf从80更改为9000并重新启动-apache将不会在该端口上提供任何东西(请注意,端口80仍按照您的预期提供所有内容) 我需要修改文件中的行* .80吗? 如果是的话? 127.0.0.1:9000还是? 更新2 如果我修改NameVirtualHost是所有我的vhosts / ports.conf中的*:9000,我得到下面的错误 root@mybox:/etc/apache2/sites-available# service apache2 restart * Restarting web server apache2 [Sat Jul 21 12:24:56 2012] […]

如何在Ubuntu上正确保护Unicorn / RoR服务器? 或者,硬化RoR应用程序堆栈?

我有几个在Ubuntu 12.04上运行的Unicorn服务器,我正在寻求保护它们免受远程shell的攻击。 我主要关心的是,如果部署ModSecurity是有意义的? 另一件事是,我已经看到Unicorn通常从端口8080运行,并将其转发到作为反向代理的Apache / NginX服务器端口80。 我在想,我可以雇用以下人员: Apache上的ModSecurity 作为工作者的Apache(带有mod_qos的线程),以防止来自任何主机的过多的请求 从指定的用户运行独angular兽服务器,并通过AppArmor或SELinux隔离它,如果它是Redhat / Centos的 我想知道,如果有另一个强化框架/修补程序的RoR像PHP Suhosin。

禁用所有,但在Apache的RC4

我们的PCI合规供应商要求我们在我们的Web服务器上禁用除RC4以外的所有encryption。 目前我们的apacheconfiguration文件如下所示: SSLHonorCipherOrder On SSLCipherSuite RC4-SHA:HIGH:!ADH:!AES256-SHA:!ECDHE-RSA-AES256-SHA384:!AES128-SHA:!DES-CBC:!aNull:!eNull:!LOW:!SSLv2 但是, https://www.ssllabs.com报告允许使用以下密码: TLS_RSA_WITH_RC4_128_SHA TLS_DHE_RSA_WITH_AES_256_CBC_SHA TLS_DHE_RSA_WITH_AES_128_CBC_SHA TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA TLS_RSA_WITH_3DES_EDE_CBC_SHA 我怎样才能configurationApache只允许RC4?

<VirtualHost fqdn.mydomain.com:80>不推荐?

在Apache2文档中说,在<VirtualHost *:80> , *可以被IP 或FQDN取代,但不build议使用FQDN。 地址可以是: 虚拟主机的IP地址; 虚拟主机IP地址的完全限定域名(不推荐); 但为什么不推荐? 如果我有www.mydomain.com和webmail.mydomain.com指向相同的IP地址,为什么我不应该在这里使用名称?

没有IPv4地址的IPv6networking服务器

IPv4 IP越来越less,越来越昂贵,我想知道是否有可能将我们的Web服务器完全切换到IPv6。 我知道build议使用IPv4和IPv6,但我仍然想知道: 有没有办法让多个IPv6networking服务器只有一个IPv4地址可达? 例如HTTPS会遇到什么问题?

我如何通过大量的并发用户来提高Drupal站点的性能?

我有一个Drupal站点,可能会在发布时获得非常高的命中率。 我们已经租了一个非常强大的服务器的初始发射,之后,我们将缩小。 该服务器有一个Xeon E5-2670 8核心处理器@ 2.6GHz和30GB的RAM。 MySQL已经被赋予了大量的内存,并且我已经证实MySQL实际上是通过“top”来使用这个内存的: innodb_buffer_pool_size = 15G PHP已经被赋予了大量的内存(现在几乎可以肯定是太多了,我注意到了“每个脚本”的评论): memory_limit = 6000M Apacheconfiguration是开箱即用的默认设置: StartServers 8 MinSpareServers 5 MaxSpareServers 20 ServerLimit 256 MaxClients 256 MaxRequestsPerChild 4000 我一直在运行JMetertesting(基本上“尽可能多地在网站上抛出尽可能多的线程,并尽可能快地请求页面”),并且随着并发用户数量的增加,我可以看到性能下降: 5用户:〜1s平均响应时间 10个用户:约1.3秒平均响应时间 20个用户:平均2.5秒的响应时间 但是,机器的负载仍然很低。 在testing中,“top”报告26gb的内存空间,“uptime”的平均负载不超过0.63。 我的怀疑是,我们仍然有很多资源可以投入到性能上,但是Apache并没有充分利用这些资源。 这就是说,我是一个开发人员,而不是一个系统pipe理员,而且我不是服务器性能方面的专家。 我可以提高性能的最佳改进是什么?

基于Ubuntu Apache IP访问限制

我的服务器已被外部人员使用我的root用户资格渗透。 随着root密码的改变,我试图find保护服务器的额外策略。 使用/etc/hosts.allow和/etc/hosts.deny似乎是一个可行的解决scheme来pipe理IP地址的访问,但我有一个潜在的问题。 我想在hosts.allow文件中指定我的工作IP。 但问题是服务提供商可能会更改IP地址。 如果发生这种情况,我会被锁在我的服务器之外。 我们的服务器是自我pipe理。 任何人都可以启发我如何预防或克服这种情况下,请?