Articles of apache 2.4

apache2上的phpmyadmin重载:未知Authz提供程序:有效用户错误

在ubuntu 14.04上aster标准安装phpmyadmin我发现<site>/phpmyadmin不起作用。 谷歌search后,我发现这可以解决与添加这一行Include "/etc/apache2/conf-enabled/*.conf" .. /etc/apache2/apache2.confconfiguration文件。 但在Apache重新加载后,我得到这个错误信息 * Reloading web server apache2 * * The apache2 configtest failed. Not doing anything. Output of config test was: AH00526: Syntax error on line 30 of /etc/apache2/conf-enabled/phpmyadmin.conf: Unknown Authz provider: valid-user Action 'configtest' failed. The Apache error log may have more information. 我怎样才能修复错误,并使phpmyadmin工作?

升级CentOS PHP,现在下载所有页面

我不得不将PHP升级到5.6,以获得语言环境和翻译的新function。 我删除了旧的PHP,并从这里指定的Remi repo添加了新的PHP。 我重新启动Apache,现在去服务器上的任何页面提示下载。 我广泛search,PHP 5作为一个模块加载: <IfModule prefork.c> LoadModule php5_module modules/libphp5.so </IfModule> <IfModule !prefork.c> LoadModule php5_module modules/libphp5-zts.so </IfModule> configtest也返回php5_module (shared) 。 我也尝试了许多处理程序和AddType ,这是我目前在httpd.conf : AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps <FilesMatch \.php$> SetHandler application/x-httpd-php </FilesMatch> 那么Apache为什么不提供PHP文件? 编辑: 我运行了以下命令: yum remove php-common 然后完全按照链接描述的方式安装php5.6。 然后用AddType和SetHandler更新httpd.conf中的第二个代码块。 这就是我所做的一切。 编辑: php-common-5.6.16-1.el7.remi.x86_64 php-mysqlnd-5.6.16-1.el7.remi.x86_64 php-dba-5.6.16-1.el7.remi.x86_64 php-pecl-zip-1.13.1-1.el7.remi.5.6.x86_64 php-5.6.16-1.el7.remi.x86_64 php-cli-5.6.16-1.el7.remi.x86_64 php-mcrypt-5.6.16-1.el7.remi.x86_64 wbm-php-pear-1.5-1.noarch php-pecl-jsonc-1.3.9-1.el7.remi.5.6.x86_64 php-pdo-5.6.16-1.el7.remi.x86_64 […]

使用PhpRedis作为会话存储时,限制redis连接

我们使用PhpRedis作为PHP会话的会话处理程序。 除此之外,我们正在运行一个标准的Apache / PHPconfiguration。 由于我们使用的是外部的Redis-as-a-service提供商,因此我们希望保持低的连接数量,因为它们要求每月支付。 我们正在经历越来越多的连接,即使在PHP网站完全闲置的时候。 连接数量一直在增加,我们迅速达到数十个连接。 有没有办法限制/汇集这些连接? 我们发现唯一可能相关的解决scheme是限制Apache产生的工作者数量,但在我看来,这似乎是一个太苛刻的解决scheme。 我们已经尝试在连接string中使用persistent=1而没有任何可见的变化。 感谢您的任何提示。

打开deflate时,apache httpd mod_expires不起作用

在Debian Jessie安装中,我手动安装了wordpress并编辑了.htaccess ,将mod_expires转为: ExpiresActive On ExpiresDefault modification 但是,当我使用Firefox Inspector来观看networkingstream量时,我发现所有的js和css文件都返回200 OK,而不是使用HTTP 304。 然后我做了一些实验。 我创build了一个名为foobar.css的几乎为空的(不可压缩的)文件,并在Firefox中浏览它。 它第一次返回200 OK ,第一次是未压缩的数据,第二次是304 Not Modified 。 我多次重复相同的内容来创build一个大的(可压缩的)文件。 这一次服务器第一次,第二次,第三次返回200 OK与压缩数据…每次它返回相同的内容,而不是预期的304 Not Modified 。 我看了/etc/apache2/mods-enabled/deflate.conf ,发现text/css在默认情况下是放气的: … AddOutputFilterByType DEFLATE text/css … 两个模块mod_expires和mod_deflate可以同时工作吗? 我应该如何configuration它们? 非常抱歉破碎的英文。 编辑:我已经find了一个解决方法在这里: https : //bz.apache.org/bugzilla/show_bug.cgi?id=45023#c22但是,这只是一个解决方法。 我认为这真的是一个服务器错误。

通配符子域redirect到文件夹而不更改url

所以我有我的htaccess文件设置,它看起来像这样: Options +FollowSymLinks RewriteEngine on RewriteBase / # MAGIC RewriteCond $1 !/$ RewriteCond $1 !\. RewriteRule ^(.+)$ /$1/ [R=301,L] # //MAGIC RewriteCond %{HTTP_HOST} !^www\. RewriteCond %{HTTP_HOST} ^([a-z0-9][-a-z0-9]+)\.domain\.com RewriteCond %{REQUEST_URI} !^/subdomains/ RewriteRule ^(.*)$ /subdomains/%1/$1 [P,NC,QSA] 我工作得很好,很好地指导phpmyadmin.domain.com到phpmyadmin.domain.com/subdomains/phpmyadmin/ 但我认为这是相当丑陋的,这表明在url。 所以我希望它静静地redirect,所以它仍然指向phpmyadmin.domain.com/subdomains/phpmyadmin/,但客户端只能看到phpmyadmin.domain.com 我一直在环顾四周,但我找不到像我想要的那样工作的任何东西。 有没有人有一个想法如何解决这个问题?

Apache反向代理有时会接pipe所有请求

我正在使用我的apache作为一个反向代理服务器的一些内部端口上运行的Web服务器的请求,以允许通过我的常规虚拟主机访问。 这是一个在stream浪汉中运行的Ubuntu 15。 这是我的虚拟主机configuration: <VirtualHost *:80> DocumentRoot /vagrant/htdocs ServerName test.vm # proxy pass mailcatcher to internal webserver <Location /mailcatcher> ProxyPass http://localhost:1080 ProxyPassReverse http://localhost:1080 </Location> <Location /assets> ProxyPass http://localhost:1080/assets </Location> <Location /messages> ProxyPass ws://localhost:1080/messages ProxyPassReverse http://localhost:1080 </Location> <Directory /> Require all granted </Directory> <Directory /vagrant/htdocs> AllowOverride all </Directory> </VirtualHost> 有一段时间,这工作正常。 但是,一段时间后,突然将所有对此虚拟主机的请求代理到内部networking服务器。 所以,如果我首先调用http://test.vm/cron/mails.php ,它将按预期运行mails.php 。 然而,经过一段随机的时间或事件之后,突然之间,上述的URL将会开始为Mailcatcher提供响应。 您正在查找的消息不存在,或者没有此类内容 […]

Apache服务器随机停止提供页面

过去两天我一直在试图解决这个问题,但是我一直没能做到。 我有一个与Apache 2.4.7的Ubuntu 14.04服务器。 Apache将随机停止提供内容,暂时修复它的唯一方法是重新启动Apache。 我有4 GB的空间启用SWAP,我注意到,当它崩溃,物理RAM似乎填满,然后SWAP也开始填补。 大量的谷歌search后,我发现这可能是与MaxClients的事情。 我的服务器非常小,只有2 GB的RAM和至强CPU E5-2630L两个核心。 我很快发现Ubuntu现在把这些设置放在/etc/apache2/mods-enabled/mpm_prefork.conf中。 我编辑MaxRequestWorkers,因为它似乎与MaxClients具有相同的描述,我将其设置为22。 这似乎解决了我的记忆问题,至less从我可以告诉。 物理内存永远不会超过1.4 GB使用,交换保持相对较低。 但现在Apache服务器似乎更频繁地崩溃,每隔4分钟左右。 之前,它会花费一个小时到一天之间的任何地方崩溃。 以下是最新的错误日志: [Sun Dec 06 18:35:36.577144 2015] [core:error] [pid 5506] AH00046: child process 6990 still did not exit, sending a SIGKILL [Sun Dec 06 18:35:36.577166 2015] [core:error] [pid 5506] AH00046: child process 7002 still did not exit, sending […]

使用NGINX将特定文件夹的IP列入白名单(又名example.com/administrator)

我正在寻找一种方法来将我的网站的特定区域的一组特定的IP地址列入白名单。 例如,我想只允许xxx.xxx.xxx.xxx访问“example.com/admin”,并拒绝所有其他的IP – 我认为这将发生在实际的服务器{}部分,但不知道在哪里和如何pipe理这个。

Apache日志充斥着攻击ip的代理错误

我在Apache日志中有这些错误… proxy:error] [pid 13317] (110)Connection timed out: AH00957: HTTP: attempt to connect to 210.86.231.64:80 (*) failed [proxy_http:error] [pid 13317] [client 5.39.116.17:56290] AH01114: HTTP: failed to make connection to backend: simsodep.com 这一直持续下去,重复,无限。 我从Apache转发代理到JBoss。 在:80configuration… SetEnvIfNoCase User-Agent "^ApacheBench/2.3" bad_bot <Proxy https://exampledev.com/*> Require all denied Deny from env=bad_bot Require ip 12.34.56.78 Require host exampledev.com </Proxy> Redirect permanent / […]

Apache – 通过HTTPS而不是HTTP延迟

我在Ubuntu 14.04(几乎默认设置),虚拟云服务器上的Apache 2.4.7有问题。 在中等服务器负载(大约2 / 3.0 cpu使用率和可用内存吨数)build立HTTPS连接的时间长达5-15秒(有时更多)。 下面是一个curl输出的例子,看看这个时候: My-MBP:~ me$ curl –trace-time –trace-ascii – https://domain.tld/some.png 20:44:40.952209 == Info: Trying 111.111.111.111… 20:45:16.046183 == Info: Connected to domain.tld (111.111.111.111) port 443 (#0) 20:45:32.371816 == Info: TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 20:45:32.371919 == Info: Server certificate: www.domain.tld 20:45:32.371946 == Info: Server certificate: GlobalSign Extended Validation CA – SHA256 […]