我希望有人能给我一些build议,请。 我正在运行一个CentOS 6服务器,在过去的几天里我的磁盘使用率从60GB变成了135GB(98%)。 我相信这个问题可能与PHP会话目录(/ var / lib / php / session)有关,因为这似乎是巨大的(我不能用ls或rm),那么在这个目录中必须有数百万个文件。 我怎样才能删除这个目录? RM不在这里工作,我也试过rsyncreplace一个空目录,但这也需要永恒。 如果这是造成这个问题 – 为什么PHP不会自动删除这些文件? 有可能有任何logging可能指向我的方向利用,DDOS或失败? 谢谢
我使用apache“mod_proxy”将所有请求转发到glassfish服务器。 相关的apacheconfiguration是: # proxy to glassfish app ProxyRequests Off ProxyPreserveHost On <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass /myAppVaadin/VAADIN/ http://127.0.0.1:8080/myAppVaadin/VAADIN/ ProxyPassReverse /myAppVaadin/VAADIN/ http://127.0.0.1:8080/myAppVaadin/VAADIN/ ProxyPass /myAppVaadin/APP/ http://127.0.0.1:8080/myAppVaadin/APP/ ProxyPassReverse /myAppVaadin/APP/ http://127.0.0.1:8080/myAppVaadin/APP/ ProxyPass / http://127.0.0.1:8080/myAppVaadin/ ProxyPassReverse / http://127.0.0.1:8080/myAppVaadin/ 问题如下: 如果我使用没有代理的Vaadin Web应用程序,那么浏览器页面重新加载button重新加载当前视图,而不创build新的会话。 但是,如果我使用apache代理的web应用程序的页面重新加载button创build一个新的会话(我必须再次login到我的应用程序)。 有谁知道我可以如何防止我得到一个新的会话,如果我重新加载一个网页通过使用Apache代理? 感谢和问候,Steffen PS:与mod_proxy_ajp我有同样的效果
我尝试curl -I domainname ,这里是响应。 HTTP/1.1 200 OK Date: Tue, 21 Apr 2015 14:49:09 GMT Server: Apache/2.2.15 (CentOS) X-Powered-By: PHP/5.3.3 Set-Cookie: PHPSESSID=kpgqqefkge38jlqc608hq12046; path=/ Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Content-Type: text/html; charset=UTF-8 X-Varnish: 294982 Age: 0 Via: 1.1 varnish-v4 Content-Length: 0 Connection: keep-alive HTTP/1.1 200 OK Date: […]
正如标题所说。 我正在考虑使用redis创build一个状态服务农场,我想要处理多个“区域” – 这样,如果一个服务closures,只有一个区域应该受到影响。 这看起来似乎是一个好主意,但我宁愿事先知道如果: 安装redis的多个并行实例是个好主意? Redis只将数据存储在RAM中? 典型的redis实例使用多less内存? (我知道这可能是一个反复的问题,但是我喜欢一些猜测)
我最近把一个opencart实例从Apache + mod_php切换到了nginx + fastcgi + php-fpm。 我一直试图通过fastcgi-cachecaching大多数页面。 不幸的是,许多用户开始报告鬼命令或接pipe其他帐户(weeee !!!!)从彻底挖掘,似乎页面被caching与set-cookie! 因此,没有发送预先存在的会话cookie的后续用户正在获取caching启动器的会话cookie。 坏! 根据所有的文件那里,下面的设置应该是防止这种情况发生(至less我的理解:) fastcgi_pass_header Set-Cookie; fastcgi_pass_header Cookie; fastcgi_ignore_headers Cache-Control Expires Set-Cookie; 当我通过单个caching看,我注意到几个页面与set-cookie:[somerandomsessionid]根据fastcgi_cache_valid下的nginx文档… 如果头部包含“Set-Cookie”字段,则不会caching这样的响应。 通过包含Set-Cookie与fastcgi_ignore_headers,我告诉它cachingset-cookie? 在许多例子中, Set-Cookie是fastcgi_ignore_headers参数的一部分。 还是应该防止Set-Cookie被处理,即使它明显在caching文件中? 以下是我的configuration的相关部分: 位置〜.php $ {… fastcgi_next_upstream error timeout invalid_header http_500 http_503; fastcgi_cache OPENCART; fastcgi_cache_bypass $no_cache; fastcgi_no_cache $no_cache; fastcgi_cache_purge $purge_method; fastcgi_cache_methods GET HEAD; fastcgi_cache_valid 200 5m; fastcgi_cache_use_stale error timeout invalid_header […]
我想先说我绝不是任何一种服务器pipe理员。 基本上我最了解电脑,所以现在我可以弄清楚。 我们公司有一个RDP服务器,5个用户可以远程连接。 它不是一个域控制器(没有活动目录)。 我的问题是,当用户从RDP会话断开,用户的会话将不会结束一段时间后结束。 我浏览了用户列表,并为每个想要结束的用户(在用户属性中的“会话”标签下)手动设置“结束断开连接的会话”字段为2小时。 然后,我结束了每个会话,以便重新连接到服务器时应用新的属性。 我也结束了重新启动服务器,以确保。 我这样做的原因是我需要除了一个以外的所有用户的会话在午夜结束。 我检查过的步骤: 我已经检查过,以确保RD会话主机configuration不覆盖用户的设置。 为此,我打开了服务器pipe理窗口,展开了“远程桌面服务”,点击了“RD会话主机configuration”,右键单击我的服务器并转到属性并查看“会话”选项卡。 “覆盖用户设置”字段全部未选中。 我还通过打开gpedit.msc,然后进入“计算机configuration\pipe理模板\ Windows组件\远程桌面服务\会话时间限制”并检查以确保没有configuration这些选项(未configuration)来检查“组策略”设置)。 从我的研究中,这些将是覆盖用户会话设置的两个设置。 但似乎还有其他的东西,用户可以无限期地停留在我的当前设置的“断开”状态。 如果我错过了什么,请指点正确的方向。 感谢您的任何input/帮助!
TL; DR – 当主节点closures时,sessionId中的节点名称未被更新为备份中的当前节点名称。 Tomcat版本 – apache-tomcat-7.0.50 我有两个节点(我的应用程序在2个独立的tomcats中的两个实例),使用会话复制configuration(也使用粘滞会话).Below是来自server.xml的集群configuration,位于Engine标记内。 在两个节点中都是类似的,除了端口号: <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster" channelSendOptions="8"> <Manager className="org.apache.catalina.ha.session.DeltaManager" expireSessionsOnShutdown="false" notifyListenersOnReplication="true"/> <Channel className="org.apache.catalina.tribes.group.GroupChannel"> <Membership className="org.apache.catalina.tribes.membership.McastService" address="228.0.0.4" port="45564" frequency="500" dropTime="3000"/> <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver" address="auto" port="4050" autoBind="100" selectorTimeout="5000" maxThreads="6"/> <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter"> <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/> </Sender> <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/> <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/> <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>\ </Channel> <Valve className="org.apache.catalina.ha.tcp.ReplicationValve" filter=""/> <Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/> <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer" tempDir="/tmp/war-temp/" deployDir="/tmp/war-deploy/" watchDir="/tmp/war-listen/" watchEnabled="false"/> <ClusterListener […]
我刚刚在我们的服务器上实现了BackInfo ,通过GPO部署。 当用户和pipe理员login和注销时,一切都按预期工作。 用户断开并重新连接RDP会话时出现问题。 我不知道它的BackInfo是否被重新连接到实际壁纸的背面,或者如果墙纸是以某种方式只在该活动会话中进行的。 由于没有login会话,因此HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run内容不会执行,因此BackInfo.exe不会在重新连接上运行。 谷歌search这个主题是地狱,我发现几乎所有的驱动器映射policys,因为我包括search术语“重新连接”。 然而,我却通过VDM_Agentfind了来自VMware的解决scheme 。 “可悲的是,”我们使用Hyper-V,所以解决scheme不针对我们。 一个可能的解决scheme是在很短的时间内使RDP会话过期,但是我希望我的用户能够断开连接,因为这是他们长期以来爱上的function。 也许有人遇到了同样的情况,不得不在RDP会话上重新运行一个程序。
我如何确定在我的服务器上打开文件的用户在Windows活动目录环境(XP,7,8客户端和Server 2008,2012)中主动使用他们的工作站之后已经过了多长时间? 在重新启动文件服务器之前,我检查是否有人在服务器上打开了文件,因此我检查了共享文件夹MMC的“ 打开文件”窗格: 由于正在使用redirect文件夹,因此login的用户将拥有打开的文件,即使他们在计算机上已经有一段时间了。 我注意到MMC的会话窗格上的Idle Time列: 据我所知,这是工作站和服务器之间SMB会话的空闲时间。 这是否能够表明用户活跃后已经有多久了? 或者没有用户活动的login工作站将该计数器重置为0:00? 我还研究了通过PSEXEC对用户工作站运行QWINSTA的输出。 这告诉我会话的状态是Active ,但我不知道这是否与“login”或“在过去的X分钟内活动”相同。 那么,有没有一种方法可以确定工作站拥有一个活跃用户的时间? 也许通过这两种方法我试过了吗?
介绍: 我有一个脚本,通过UNCpath将一些数据从本地服务器(服务器A)复制到另一台服务器(服务器B),服务器B中的共享是为每天更换的外部硬盘创build的,外部HDD被交换使用mountvol命令挂载新的硬盘,分配的字母是相同的,但是您可能已经知道每个硬盘的卷名是不同的。 我得到它的问题(一步一步): 如果我在服务器B中打开资源pipe理器并转到UNCpath,这意味着在服务器A中有一个来自服务器B的用于我(用户X)的会话,在我使用另一个帐户(用户Y)执行的cmd中,例如: dir \\path" 我看到这些文件,所以在这一点上,来自同一台计算机和不同用户的2个会话。 好奇心:用户Y的会话将保持,直到在命令行中写入另一个命令,或者cmd窗口失去焦点 – 而不是在dir命令完成之后立即closures会话。 有了以上的好奇心,在这种情况下,用户Y的第二个会话可以被忽略,这使得我们在服务器A中为用户X留下一个会话 我去服务器B,使用mountvol卸载硬盘(也可以在计算机pipe理中完成),交换硬盘,然后我装入新的硬盘。 我回到服务器A,在cmd窗口中我再次执行任何帐户用户X或Y的DIR命令,我得到: The system cannot find the file specified. 如果我去打开资源pipe理器窗口并刷新窗口,文件也不会出现。 我在网上发现,重新启动服务器B的浏览器进程后,共享文件再次可见,即删除服务器A中的会话(所有的会话?),另一个窍门就是删除服务器B中的会话。 可能的解决scheme – >我希望你的帮助在这里:) 由于脚本(批处理脚本)是自动的,我不想检查服务器A中服务器B是否有任何挂起的会话,我想强制closures服务器A BUT中给定共享的所有挂起会话我想从服务器B中的脚本来完成,“net sess(ion(s))”是为了本地目的。 如果您有任何其他build议,那么我的意思是另一个可能的解决scheme,请让我知道。 谢谢。 技术信息: Server A: Windows Server 2008 R2 Enterprise SP1 Server B: Windows Server 2003 Enterprise SP2 注:如果我错了,纠正我,但我认为: 刷新浏览器窗口中的UNCpath视图不起作用,因为卷名不同,请卸载并重新安装(同一个HDD),使刷新正常工作。 这可能是一个安全function? 或者这是一个错误? 还是我错过了什么? 运行一个uncpath的dir后,检索文件列表应立即closures会话,因为没有更多的“处理”。 运行一个uncpath的目录后,会话保持打开,但是当你点击另一个窗口(cmd窗口失去焦点)会话消失。