Articles of Web服务器

如何确定一个Apache正在服务的文件数量,而不是减慢服务器的速度?

我有两个Apache Web服务器,每秒处理数千个文件。 我想比较这两个networking服务器,以确定谁可以更快地服务于更多的文件。 使用ExtendedStatus On的mod_status完全可以完成这项工作,但是它太慢了。 不用说,也没有访问日志。 什么是确定apaches服务的文件/请求数量的简单方法?

很长的HTTP获取和即时响应

我们在IIS7上有一个ASP.Net 3.5应用程序。 在我们的预览服务器上,它几乎可以即时获取和响应(从显示页面到1秒)。 我们有一个有5个Web前端和3个sql数据库集群的生产环境。 字体结尾是负载平衡Big5从循环赛f5。 前端和sql服务器之间有一个防火墙。 在生产中,我们在服务器启动响应之前正在经历45秒的获取。 根据上面的信息,罪魁祸首是什么? 先进的谢谢你。

默认所有的PHP生成和Apache服务页面不caching

我有一个小型的Xampp服务器,用于PHP网站的编码和原型。 每次刷新页面时,我通常会在最近几秒钟内调整页面的代码。 没有理由将来自服务器的任何内容caching起来,而且我的工作存在着caching内容的问题。 是否有一个简单的方法在Apache或PHP中使所有内容服务,未caching的默认? 唯一能看到服务器的是我的工作站,因为我的防火墙configuration为防止外部通讯,所以不用担心。 我宁愿设置在apache或php.in而不是基于浏览器的解决scheme。 思考?

Ubuntu服务器和Tomcat 6 WebApp SecurityUtilexception

我正在运行Ubuntu Server 9.10的干净安装,并从Ubuntu安装中安装了Tomcat 6。 当我通过Tomcatpipe理器上传一个WebApp时,它会在/etc/init.d/tomcat6 start时自动启动,在我的Web Apps WebContent/WEB-INF/lib /etc/init.d/tomcat6 start我的Lib Jars会引发exception。 我正在使用Project ROME作为我的RSS源,在我通过Eclipsetesting的本地tomcat服务器上正常工作。 但是,当我在Ubuntu的Tomcat上运行它,我得到一个ServletException: javax.servlet.ServletException: Could not initialize class com.sun.syndication.feed.synd.SyndFeedImpl org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:294) org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:162) 我猜我需要更改/etc/tomcat6/policy.d/中生成/var/cache/tomcat6/catalina.policy文件中的一个文件。 但是我不知道要改变什么。 请帮助!

使用Rackspace云时的networking架构

我打算很快推出一个Web应用程序,并决定在Debian上使用Rackspace的Cloud产品。 我并不期望开始这么多的stream量,但是现在即使使用小型的VPS,现在也可以让架构正确无误。 我不太确定的是我应该得到多lessVPS。 至less,我知道我会需要三个VPS: 两个Apache Web服务器 一个MySQL的服务器 我也想 Nginx负载均衡器 MySQL复制 memcached的 我不知道最后三个进程应该在哪里运行。 负载平衡器是否可以像MySQL从站一样在同一台机器上运行,还是应该在自己的机器上运行? memcached是否与networking服务器或不同的机器一起运行?

SVN,桑巴和符号链接。 如何让他们一起玩?

我有一个版本控制下的网站项目,依赖于通过符号链接在同一服务器上的未版本控制的目录中的文件。 我正在存储库中的符号链接。 这个想法是,如果有人将工作副本签出到同一台服务器上,他们可以在将其提交回存储库之前编辑和testing项目的工作副本。 当他们检查他们的工作副本时,它成功地设置了符号链接,以便整个网站在testing时工作。 在项目上工作的用户是Windows用户,所以我在服务器上设置了一个samba共享,然后将它们映射到Windows中的networking驱动器。 人们可以通过networking共享直接在服务器上编辑工作副本,然后在通过TortoiseSVN将更改提交回存储库之前,在Web浏览器中对其进行testing。 问题 我遇到的问题是Samba按预期解决了符号链接,但是当用户试图将其更改提交回存储库时,TortoiseSVN认为链接文件是项目的一部分,并尝试将目标文件提交到存储库而不是符号链接他们自己。 我尝试closuressamba中的符号链接支持,这意味着链接文件无法parsing,因为我不想让人们访问链接的文件,也不想导入存储库中的链接文件。 这个问题是,我不能stat'\ webserver \ projects \ working \ project \ symlinked_file.php'。 访问被拒绝 除了符号链接问题外,其他所有工作都完美无缺。 用户既可以将网站项目签到他们的机器上,也可以在他们的机器上工作(但不能testing),或者将他们签出到他们在开发Web服务器上的空间上,并对其进行处理并完成testing。 所以我不想改变工作stream程,我只是需要一个符号链接问题的解决scheme。 非常感谢。 最初张贴在StackOverflow: https ://stackoverflow.com/questions/2400917/svn-samba-and-symbolic-links-how-to-get-them-all-to-play-together

Linuxnetworking/数据库服务器的热插拔

有没有办法在Linux下执行以下操作: 有两个Web服务器,主要和备份 有两个数据库服务器(postgres),主要和备份 Web服务器彼此同步,即。 configuration/内容/应用程序是相同的 备份数据库不断与主数据库同步。 如果两台主服务器中的任何一台出现故障,则会立即replace为备用服务器。 当主数据库服务器恢复正常时,所有来自备份服务器的数据都会上传到它。 为了使其更加复杂,一个重要的细节是这两台服务器实际上是VPS,并且由不同的提供商在不同的国家/地区托pipe,因此在同一个子网/机架等服务器的显而易见的解决scheme都不会在这里工作。 从本质上讲,如果可能的话,我需要热插拔自动工作,无需用户干预或用户干预最less。 恢复过程优选是自动的,但可以包括一些手动步骤。

如何在centos 5上禁用mod_security2规则(误报)

您好我有一个centos5服务器上启用mod_security和其中一个规则是让用户不要在窗体上张贴一些文本。 该文本是合法的,但它后面有“create”和一个html <table>标签,所以导致误报。 我收到的错误如下: [Sun Apr 25 20:36:53 2010] [error] [client 76.171.171.xxx] ModSecurity: Access denied with code 500 (phase 2). Pattern match "((alter|create|drop)[[:space:]]+(column|database|procedure|table)|delete[[:space:]]+from|update.+set.+=)" at ARGS:body. [file "/usr/local/apache/conf/modsec2.user.conf"] [line "352"] [id "300015"] [rev "1"] [msg "Generic SQL injection protection"] [severity "CRITICAL"] [hostname "www.mysite.com"] [uri "/node/181/edit"] [unique_id "@TaVDEWnlusAABQv9@oAAAAD"] 这里是/usr/local/apache/conf/modsec2.user.conf(第352行) #Generic SQL sigs SecRule ARGS "((alter|create|drop)[[:space:]]+(column|database|procedure|table)|delete[[:space:]]+from|update.+set.+=)" "id:1,rev:1,severity:2,msg:'Generic SQL […]

适当的并发用户评估案例研究

我被要求为一个Web架构调整大量的并发用户(数十万)。 我很难说服这些人,除非你在国家网站的前五名,否则很难达到这些数字。 任何人都可以提供一些真实世界的案例研究,为总/并发用户提供统计数据,解释总数与并发数之间的通常比率是多less?

数据库服务器应该与应用程序位于不同的VM实例中吗?

我将数据库服务器设置为服务器中的单独虚拟机,以便我可以控制资源并对该实例进行备份。 我拥有一个服务器,将尽快驻留在科罗拉多州。 这是最好的方式来接近我的数据库的可扩展性? 有没有任何安全问题? 即使它是一个单独的实例,我仍然在localhost听吗? 而且,在与你的应用程序相同的机器上运行你的数据库(在我的情况下是PostgreSQL)还有什么好处(在我的情况下是基于Web的SAAS应用程序)?