我在我的apache的security.conf文件中有以下代码 <DirectoryMatch "/(albums|attachment(s)?|upload(s)?)"> Options -ExecCGI <IfModule php5_module> php_flag engine off </IfModule> </DirectoryMatch> 这是为了防止这些目录中的任何文件的PHP执行。 但是,如果我有这个代码,那么名为attachment.php的文件也不会执行PHP代码。 我可以修改正则expression式不包含attachment.php文件。 但是,问题是为什么上面的DirectoryMatch导致我的文件没有得到执行。 如path: 文档根目录:/ var / www / html 上传/附件目录: 在/ var / WWW /上传 在/ var / WWW /上传/附件 在/ var / WWW /上传/相册 在/ var / www / html等/附件 attachment.php文件:/var/www/html/attachment.php
运行Windows Server 2008 R2 端口8080上的nginx端口80上的Apache Apache正在托pipe指令中configuration的5个网站。 我正在尝试将nginxconfiguration为Apache前的代理,(我将在完成testing后反转端口号)。 nginx.conf包含这个服务器, server { listen 8080; server_name www.domain1.com; root PATH/domain1/; index index.html index.htm index.php; location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { expires 365d; } ## send request back to apache1 ## location / { proxy_pass http://127.0.0.1; proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504; proxy_redirect off; proxy_buffering off; proxy_set_header Host $host; proxy_set_header […]
我有一个奇怪的,我昨天才注意到的。 在24小时内,我们的apache机器上的cpu负载(16个双核六核机器)增加了一倍。 我们每个月处理大约80亿个请求,一切都落后于haproxy负载平衡器。 每台机器上正在运行的进程数总是相同的(在负载平衡器上限制),并且任何队列都在haproxy中构build。 我们将haproxy中的运行会话数量限制为每台机器90个(因为每台机器上的ram和cpu限制而被选中) 我们正在使用以下configuration的事件mpm: event MPM <IfModule event.c> ServerLimit 15 MaxClients 960 StartServers 2 ThreadsPerChild 64 ThreadLimit 64 MinSpareThreads 32 MaxSpareThreads 112 MaxRequestsPerChild 20000 </IfModule> 以目前的速度,20K的请求应该意味着线程每2分钟左右重启一次。 内存使用率低。 我们在每台机器上都有12GB的RAM,而在高峰期,它们只用了7GB。 apache的重新启动立即将负载降低一半,并保持几个小时。 任何想法或额外的信息需要?
我正在尝试使用Apache在我的服务器上本地运行的Cloud9实例设置反向代理。 我有以下设置: <VirtualHost *:80> ProxyPreserveHost On ProxyPass / http://localhost:3131/ ProxyPassReverse / http://localhost:3131/ ServerAdmin [email protected] ServerName cloud9.mydomain.org </VirtualHost> 我也尝试重新sorting的指令,所以ServerAdmin和ServerName第一。 到目前为止,如果我点击http://cloud9.mydomain.org ,我得到一个浏览器错误,说它无法连接。 Apache的access.log或error.log中也没有logging。 我在想,我错过了一些作品,但是我不确定这个作品可能是什么。 我也不知道我是否在正确的地方寻找原木。 Cloud9进程已启动,似乎在3131端口上运行。 我不打算开放Cloud9。 我所拍摄的最终游戏是最终通过SSL使用一些authentication(也许是基本authentication)来获取Cloud9,但是在开始添加SSL和authentication之前,我想到了,我应该先让基础知识工作。 更新 apachectl -S输出: # apachectl -S VirtualHost configuration: wildcard NameVirtualHosts and _default_ servers: *:80 is a NameVirtualHost default server www.mydomain.org (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost www.mydomain.org (/etc/apache2/sites-enabled/000-default:1) port 80 namevhost […]
从Redhat到Suse的高stream量网站迁移后,Internet Explorer用户(至lessIE 9)在某些情况下会遇到麻烦,无法查看FrontPage(错误消息:“Internet Explorer无法显示页面”,指向500服务器错误)。 在大多数情况下,Internet Explorer不会像所有其他浏览器一样正确显示页面。 我已经检查了大约10个不同的电脑,不同的IE版本和不同的操作系统。 Browserstack也为所有版本的IE显示正确的站点。 到目前为止,我还没有能够自己重现错误。 在旧的服务器上这个问题并不存在。 根据apache access.log,错误可能与在.htaccess文件中指定的redirect有关。 访问日志在出现错误的情况下给出状态302,之后没有任何内容(对于特定的IP地址)。 错误日志是空的。 请参阅下面的完整.htaccess文件。 已经为该站点安装了SSL,并且运行良好,没有任何已知的错误。 奇怪的细节:如果接收到错误的用户按F5,即使在重新启动或重新启动浏览器之后,该站点仍然没有问题地加载。 这指出了一个caching问题,但到目前为止我还没有find原因。 SetEnv APPLICATION_ENV production Options All -Indexes Options +FollowSymLinks RewriteEngine On RewriteCond %{SERVER_PORT} !^443$ [OR] RewriteCond %{HTTP_HOST} !www\.domain\.nl [NC] RewriteRule ^(.*)$ https://www.domain.nl/$1 [R,L] RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ – [NC,L] […]
最近几天我一直在学习如何设置var / www / permissions。 我明白常见的解决scheme是通过粘滞位将所有新文件夹的组所有者设置为apache。 给Apache一个特定用户所属的“admin”的辅助组,是如何的? 这似乎是更灵活的方法,因为这种方式与pipe理员上传的所有脚本阿帕奇将有写权限,而不是与其他,不太信任的用户。 这种方法有哪些安全漏洞? 在安全性方面,它是如何比较简单地使文件夹apache主组的所有者 – apache?
我一直试图通过Apache2 2.2.22来阻止在Ubuntu 13.04上访问WordPress wp-admin和wp-includes目录。 首先,我尝试使用.htaccess,由于某种原因,它不能正常工作,但在阅读Apache Docs时,他们build议不要。 所以我改变了他们的build议,把它放在conf文件的<directory>部分。 你能看到我在这里做错了吗? 防止访问目录的最佳方法是什么? 防止访问单个文件的最佳方法是什么? 如何让服务器执行防止.htaccess访问的规则以及防止访问vserver.conf下面列出的版本控制目录? 以下是我的vserver.conf文件。 <VirtualHost *:80> ServerAdmin [email protected] DocumentRoot /var/www/domain/ ServerName domain.com ServerAlias www.domain.com <Directory "/var/www/domain/"> # WordPress Permalink Configuration # BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ – [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # wp-include rules remove […]
我正在尝试在我的服务器上获取mod deflate和gzip安装程序。 这一切都在顺风顺水,但似乎并没有捕捉所有的文件。 这不是它缺less所有的JavaScript或所有的CSS。 它似乎缺less一些JavaScript和一些CSS。 例如,下面的CSS没有被压缩: http : //www.discussthemarket.com/global-assets/css/bootstrap/bootstrap.min.css 而下面的CSS被压缩: http : //www.discussthemarket.com/assets/css/bootstrap.default.css 这是我的configuration在我的htaccess中: # compress text, html, javascript, css, xml: AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript 我已经search了直到牛回家,没有任何工作。 我也尝试过在configuration上的各种变化。
所以我对Linux和networking服务器相当陌生,但是大约8个月前,我们把我们的网站从共享主机环境迁移到了Linux虚拟服务器上,速度更快,并且一直运行起来,直到我们在Wordpress中重新构build我们的网站之一,出版。 WP网站在testing服务器上运行良好,但现在它已经上线到我们的服务器上,我们遇到了麻烦。 这是到目前为止发生的事情和我所做的。 网站运行良好,然后我注意到,Apache RAM和CPU峰值100%和一堆php-cgi进程启动。 然后我得到一个错误: mod_fcgid: process ##### graceful kill fail, sending SIGKILL WordPress的网站,然后开始给503错误,但非WordPress的网站工作得很好。 apache重新启动修复了这个问题。 所以之后我对fcgid conf文件做了一些修改,如下所示: FcgidIdleTimeout 60 FcgidProcessLifeTime 120 FcgidMaxProcesses 150 FcgidMaxProcessesPerClass 8 FcgidMinProcessesPerClass 0 FcgidConnectTimeout 30 FcgidIOTimeout 2000 FcgidInitialEnv RAILS_ENV production FcgidIdleScanInterval 30 FcgidMaxRequestLen 1073741824 现在,当CPU / RAM秒杀发生时,我仍然得到一堆的php-cgi进程,但一段时间后,它平静下来,我得到了一堆僵尸php-cgi进程,但服务器继续下去,所以我对此感到高兴。 但是我必须偶尔重新启动这些进程。 我们在一个testing服务器上testing了我们的网站几个月,没有问题,但是现在我们一次在网站上有10-20个人。 但是我不知道是什么原因导致了这个失控,甚至不知道从哪里开始。 也许这是一个代码问题,也许这是一个服务器configuration问题。 服务器规格: 2GB内存 CentOS 6 网站通常有500-1000MB的RAM免费 让我知道如果你需要其他的细节,我可以看看他们。 更新:所以我认为这可能是相关的一些不良的PHP代码,但这将需要时间来追查。 似乎应该有一些更强大的服务器configuration,我可以设置,以防止下降。 今天我把它放下了2-3次,其中一个把apache服务全部撞在了一起。
我有一个Apache目录列表的服务器。 我已经对它进行了一些修改,并尝试了自己的专有技术,但是我发现最好的解决scheme是Apache主目录。 不过,我想添加一个search栏和一个上传button,如果不是太难,一个文件删除button。 我怎样才能做到这一点?