我正在调查网站上的性能问题。 我们使用的软件需要htaccess(即,如果不存在,它会生成.htaccess本身,因此将规则移到httpd.conf不是一个选项)。 不过,我们也有很长的(mod_rewritten)url,尤其是图片。 所以看着strace,我可以看到我们在一个页面上有10个图像,所有的path都像 /img/p/12/13/14/14.jpg 它正在寻找60个文件夹中的htaccess只为图像。 反正告诉Apache只使用在/ var / www / html / site使用的.htaccess而不是查找任何其他.htaccess文件?
我在我的rhel 6.5家庭实验室学习Apache # cat /etc/redhat-release Red Hat Enterprise Linux Server release 6.5 (Santiago) # rpm -qa | grep httpd httpd-tools-2.2.15-29.el6_4.x86_64 httpd-2.2.15-29.el6_4.x86_64 # hostname srv1.net1.com # cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 srv1.net1.com Also is the DNS server for the network hosts. # dig @localhost +noall +answer srv1.net1.com srv1.net1.com. 60 […]
这是我的问题。 我有一台虚拟机,在Windows上安装了Apache服务器(2.4)。 虚拟机在networking上,以便其他人可以直接在http://192.168.100.22 (ACTUALLY) 首先,http协议一切正常。 我已经设置了HTTPS连接到这个服务器。 (实际上是本地networking上的自签名证书) 我已经安装了一个nodeJs服务器并在此机器上的9001端口上侦听。 这只是应该pipe理websockets。 实际的问题是没有任何工作与HTTPS的任何使用。 NodeServerconfiguration如下: var app = require('express')(); var http = require('http').Server(app); var io = require('socket.io')(http); //… http.listen(9001,function(){ console.log('SERVER LISTENING'); }); 在客户端,一切工作正常与这种连接: var socket = io('ws://192.168.100.22:9001'); 现在所有的事情都在https协议上,这个连接失败了。 我必须做什么/更改,使我的套接字连接与https协议工作? 我试图将其更改为wss://而不是ws,试图在节点服务器中使用require('https')而不是http,但是没有任何工作正在进行中… 我面对的最后一个错误是: Cross-origin request blocked 感谢您的帮助/阅读
我无法安装php-fpm。 当我安装它,并打开一个PHP文件,我得到一个403 forbiden状态代码 看日志是看 client denied by server configuration: /usr/lib/cgi-bin/php5-fcgi 我改变了我的指示,允许所有问题修复。 有没有办法允许访问cgi-bin而不必允许所有人访问/? 到目前为止,我已经尝试从127.0.0.1允许我还尝试添加一个指令的CGI斌。 既没有工作 指令 <Directory /> Order allow,deny Allow from All Options None AllowOverride None </Directory> <Directory "/srv/public_html"> Options SymLinksIfOwnerMatch AllowOverride None Order allow,deny Allow from all </Directory> FastCGIconfiguration AddHandler php5-fcgi .php Action php5-fcgi /php5-fcgi Alias /php5-fcgi /usr/lib/cgi-bin/php5-fcgi FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi -socket /tmp/php5-fpm.sock -pass-header Authorization […]
PHP版本5.4.41 Apache版本2.2.15 Linux版本2.6.32 CentOS 6.6 我有一些代码不会正确redirect。 有很多的代码和configuration,所以我会尽量保持简单。 我的会话在头redirect后不断丢失。 没有错误,没有警告…redirect进展良好。 我session_start(); 和var_dump [$ _ SESSION]在页面redirect后得到NULL。 如果我session_start和redirect之前转储,会话转储罚款。 我猜测这与htaccess mod_rewrites在页面之间放置会话有关,但我不确定如何解决这个问题。 我一直在阅读添加[L,QSA],但这并没有帮助。 对于不使用mod_rewrites的同一台服务器上的简单页面,会话工作正常。 我认为该域是相同的,看它如何从: http:// localhost:8000 / web / someus /login http:// localhost:8000 / web / someus / home 我chmoded&chownedrecursion整个www文件夹,以便Apache拥有所有权限,并拥有网站上的所有内容。 .htaccess文件如下所示: RewriteCond %{REQUEST_URI} !=/web/[a-z0-9]{6}/index.php RewriteCond %{REQUEST_URI} !error [NC] RewriteCond %{REQUEST_URI} !css [NC] RewriteCond %{REQUEST_URI} !images [NC] RewriteCond %{REQUEST_URI} !js […]
我有一个运行Apache反向代理的Tomcat应用程序。 我试图限制只能从本地主机访问经理和主机pipe理器上下文。 所以我从两个上下文中取消了关于context.xml文件的以下行: <!– Remove the comment markers from around the Valve below to limit access to the manager application to clients connecting from localhost –> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> 但是当我尝试从本地主机访问这些上下文时,它总是向我显示错误403页面。 我没有在allow属性中得到d +的东西,所以我也试过allow =“127 \ .0 \ .0 \ .1 | :: 1 | 0:0:0:0:0:0:0:1”也没有运气。 在我的context.xmlconfiguration中有什么问题吗? 当它们首先通过apache的mod_proxy( ProxyPass ajp:// localhost:8009 )进行过滤时,它的行为是否有所不同? 谢谢
我很难创build一个新的安全2.5规则。 我的部署:Apache服务器,安装程序作为反向代理。 (所以apache的web服务器__并不承载网站,而是将请求代理给另一个服务器来回应networking请求。) Web服务器使用authentication令牌将网站URL重写为安全的URL。 75.75.75.75 – – [01/May/2015:10:55:14 -0400] "GET /record/example.svc/js HTTP/1.1" 200 1786 "https://example.org/example.aspx?XOW%5eLdz%3c2%2f1%2f42%2527kbmhtbffJfx%3e0%2527qpkf%5ejc%3e2%2527Cfruho%60uhpmXOW%5eLdz%3c2%2f1%2f42%2527RptsbfVQU%60Jfx%3e193%2527qpkf%5ejc%3e2%2527RptsbfVQU%60Ejqts%60Bihmc%60Mblf%3cSdrtfru%1fTbpqjmh" 问题: Modsecurity当前扫描URI。 由于随机URI的性质,已经产生了很多误报。 为了防止这种情况,我想豁免所有的URIs扫描。 由于重写,redirect和身份validation令牌都在Web服务器上生成(我们如何保留它),所以如何通知mod安全性这些头文件是合法的,而不是扫描它们? 75.75.75.75 – – [01/May/2015:10:55:52 -0400] "GET /thing.aspx?XOW%5eLdz%3c375%25cddnnd%60ttds%5ebt%60he%3c5%2f58328 HTTP/1.1" 200 15100 "https://example.org/example.aspx?XOW%5eLdz%3c2%2f1%2f42%2527kbmhtbffJfx%3e0%2527qpkf%5ejc%3e2%2527Cfruho%60uhpmXOW%5eLdz%3c2%2f1%2f42%2527RptsbfVQU%60Jfx%3e193%2527qpkf%5ejc%3e2%2527RptsbfVQU%60Ejqts%60Bihmc%60Mblf%3cSdrtfru%1fTbpqjmh" 75.75.75.75 – – [01/May/2015:10:55:52 -0400] "GET /example/example.svc/js HTTP/1.1" 200 1786 "https://example.org/example.aspx?XOW%5eLdz%3c375%25cddnnd%60ttds%5ebt%60he%3c5%2f58328"
我试图build立一个辅助的Apache服务器(最终只会成为主要的)。 工作设置是Windows XP运行Apache 2.2.6(通过Wampserver2)与8个站点(虚拟主机),都按预期工作。 我想升级到更现代的应用程序。 为了达到这个目的,我试图转换(以我复杂的方式)运行Windows 7的新版本,我已经安装了Wampserver 2.5,从而安装了Apache 2.4.9。 作为一种学习练习,我想尝试让两台服务器一起运行,同时还要维护所有当前的网站,看起来使用网关可以实现这一点。 所以我现在有什么是Apache 2.2.6框A(本地IP为192.168.1.3)与路由器(NB604N)转发端口80,443和3306到这个盒子/ IP,各种网站工作正常(本地和外部)。 我现在也有框B运行Apache 2.4.9与IP地址192.168.1.2。 我已经添加了第二个网站,除了原来的框(e:wamp / wwww),对于第二个网站,我也设置了一个域名。 然后,我在框A(apache 2.2.6)(网关服务器是什么)上做了什么? a)取消注释mod_proxy模块: – LoadModule actions_module modules/mod_actions.so LoadModule alias_module modules/mod_alias.so LoadModule asis_module modules/mod_asis.so LoadModule auth_basic_module modules/mod_auth_basic.so #LoadModule auth_digest_module modules/mod_auth_digest.so #LoadModule authn_anon_module modules/mod_authn_anon.so #LoadModule authn_dbm_module modules/mod_authn_dbm.so LoadModule authn_default_module modules/mod_authn_default.so LoadModule authn_file_module modules/mod_authn_file.so #LoadModule authz_dbm_module modules/mod_authz_dbm.so LoadModule authz_default_module modules/mod_authz_default.so […]
我的目标是大致了解我的服务器一次可以处理多less个apache2连接。 我已经经历了所有正在运行的进程,包括apache2进程,并且指出使用的总共840mb,480mb左右可以与“开销”相关联,其余的360mb来自apache进程(平均20mb每个apache2进程)。 那么,这是一个公平的公式来确定我允许的最大连接吗? (server size – overhead) / 20 所以,根据上面的数字1 GB的服务器,我应该能够处理27个连接。 有了一个2 GB的服务器,我应该能够处理78.等等。 这种方法是否有任何意义?
我的问题可能有点混乱,对此感到遗憾。 这是我需要的: 那么,我有(假设)3个网站托pipe在一个Apache(这是在每个VirtualHost设置里面定义的,然后我目前单独login他们的访问日志,如下所示: /var/log/httpd/website-a.com.access_log /var/log/httpd/website-b.com.access_log /var/log/httpd/website-c.com.access_log 所以一切都好。 但同时 ,我还希望他们(所有的访问日志)在Apache的默认本地主机日志文件(我不知道如何调用那个) 。 也许: / var / log / httpd / access_log (我想这是默认的) 换句话说,有没有办法(如何)将访问日志保持在分离的状态,同时又保留在同一个组合文件中呢? 所以这将允许我看到每个访问日志在他们分开的文件。 与此同时,如果我需要,我还可以在一个地方看到所有的日志。