Articles of apache 2.4

当我尝试使用公有IP访问站点时,Apache服务器抛出502错误

我有一个奇怪的例子。 我在AWS中configuration了两台服务器: Develop和QA ,两台使用Ubuntu 16.04 , Apache 2和PHP 7.0 。 我创build了一个网站en Develop,并configuration了它的VirtualHost文件。 所以,在Develop中,编辑它的/ etc / hosts文件指向它自己: 127.0.0.1 site.test.com 而且,在QA中,我编辑它的/ etc / hosts文件来指向开发私有IP 。 172.xxx site.test.com 而且,如果我使用Develop和QA中的elinks进行testing,那么在这两种情况下我都可以访问该站点。 现在,在我的本地Windows计算机上,如果我将从公开IP服务器的公共IP ,显示我的Apache默认页面 。 你知道,那个带有文本的页面“It works!这是默认的欢迎页面,用于testingApache2的正确操作…” 所以,我从我的电脑编辑我的本地主机文件 ,指向我的网站开发公共IP : xxxx site.test.com 但是,当我试图访问我的网站site.test.com,它给我一个HTTP错误502 。 我可以通过SSH的公共IP访问开发服务器,我可以看到Apache的默认页面,但我不能看到我configuration的网站。 但是,在AWS的两台服务器之间,我可以。 我做错了什么? 我误解了什么?

Apache X-Forward – 在https上

我有一个在2个Apache服务器前面的负载均衡IP 在后端服务器上,我使用了Apache 2.4,并且启用了mod_remoteip来检索真正的客户端IP,只要通过HTTP发送请求,如果请求通过HTTPS发送,则“X-Forward-For”被忽略 有没有办法轻松检索这个? 首先想到的是通过HTTP获取所有请求,然后转发到HTTPS,希望保留该标头 使用的LogFormat "%{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined – LogFormat "%{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined

Promlem与Ubuntu 16.4和PHP的性能

我们在Windows server 2016环境中新安装了Ubuntu 16.4 LTS + apache + mysql虚拟服务器。 我们目前的云服务生产系统运行起来应该是这样的,服务器上的页面加载时间大约200ms左右。 但是在我们的环境中使用时,同样的页面有3,4秒的加载时间。 这只发生在一个特定的PHP页面上。 其他页面在页面加载时间上有一定的结果。 服务器有很多免费的资源,我给了服务器40个核心(全部)和8千兆字节的RAM。 所以这不应该是缺乏资源。 我到目前为止调整了MySQL。 如果我使用phpmyadmin运行SQL查询sraight,他们的响应时间就像0,02sec / query … 我认为我们的环境有一些阻止PHP脚本或一些networking相关的事情或PHP的错误,Apache设置… 从哪里开始debugging这个问题? 我如何加快PHP? 我做了很多谷歌search,但他们没有帮助。 事情就像不要调用mysql localhost,而是使用127.0.0.1等等。

Apache使用100%的CPU,但只有部分内存在重负载

我正在运行一个网站,在特定的时间得到大量使用。 我在EC2 Ubuntu 16.04服务器上运行apache 2.4,使用4核CPU和16GB内存和2GB交换。 平均apache进程的大小是35MB(大约)。 我将KeepAlive值设置为ON,并将KeepAliveTimeout设置为5的较低值。 我正在使用MPM prefork,configuration如下所示: <IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 ServerLimit 350 MaxRequestWorkers 350 MaxConnectionsPerChild 20000 </IfModule> 当并发用户数量增加时,htop显示所有4个内核都被100%利用,但是在可用的15GB中RAM仍然只显示1.5或2GB。 为什么没有使用更多的内存? 有这种CPU使用情况是正常的吗? 如果用户数从这里增加,则服务器开始返回HTTP 522错误。 附加信息:用于获取值的计算参考本教程和ServerFault上的这个答案 我发现一个单一的Apache进程占用大约35MB的内存。 我在PM2下运行nodejs(for socketio)。 MySQL从RDS运行,不在此服务器上。 尽pipe如此,根据build议的计算,我已经减less了一些值: Available Memory – 14000MB (将其余的RAM留作其他用途) Apache Process usage – 40MB MaxRequestWorkers = 14000/40 = 350 StartServers 30% of MaxRequestWorkers (应该是105,但是我觉得太高了,应该把它做成105?) […]

Apache几乎花了一秒钟的CSS文件的第一个字节

我试图挤出我的networking服务器的最佳性能和第一次字节给我一个非常困难的时间。 我已经设法让页面在2-3秒内加载,但是这些字节的第一次通常在600-800ms之间。 我以为这可能是PHP缓慢,并进一步优化。 看过一个瀑布看来,非PHP文件也很慢,实际上我的主要CSS文件的第一次字节超过800毫秒。 这个文件肯定不会经历任何PHP处理。 该文件是400kb的所有css缩小为一个。 我研究了apaches模块,并禁用了很多未使用的模块,包括一些仅用于debugging的模块。 这似乎并没有加快第一个字节。 我的.htaccess文件中有超过90个RewriteRules。 我知道这是很多,但它是一个大的网站。 他们都适用于PHP,但我会认为它会浪费更多的资源,使用每个前面的条件。 相反,我把整个文件的内容移到了.htconf文件中。 这似乎工作得很好,但再次,没有增加我的CSS文件的第一个字节。 我知道css将被caching到用户浏览器,但我得到的大量访问者来自谷歌,这将是第一次访问。 第一个字节的延迟也发生在PHP中,所以看起来像apache是​​怪罪。 有人在这里有build议吗? OS: Centos 7 RAM: 16 GB ECC CPU: Xeon 2 x E5504 Server version: Apache/2.4.6 (CentOS)

升级ubuntu服务器后出现GLPI错误

升级我的发行版服务器ubuntu与GLPI的工作后,我的一个具体问题。 这里uname命令的结果是: (Linux ****** 3.13.0-32-generic#57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU / Linux) 我不明白这个问题..当我尝试使用networking连接到GLPI我有一个空白页面没有错误。 首先,我正在查看我的日志(apache2&MySQL),只有我的apache errors.log告诉我一些东西,当我尝试连接到web(使用web http:// servername / glpi )时: [Thu Oct 12 11:07:39.142484 2017] [:error] [pid 7078] [client 213.166.218.71:62978] PHP致命错误:Uncaught错误:调用未定义的方法Config :: getConfigurationValues()在/ usr / glpi / config / config.php:118 \ nStack trace:\ n#0 /usr/share/glpi/inc/includes.php(54): include_once()\ n#1 / usr […]

阿帕奇突然停止对外工作

我有一个与Apache,MySQL和PHP的Windows 2012 R2服务器,并有一些域指向它。 我有Windows的DNS服务,一切正常,我可以访问它的外部和所有,但有时它停止工作。 如果我的RDP到机器上,我可以尝试本地主机,它的工作原理,但它不(这种情况发生时),导致我认为这可能是一个DNS问题,但是,如果我只是重新启动Apache它开始再次外部工作。 我使用net start和net stop命令重新启动Apache。 我在服务器上设置了两个任务,所以每12小时重启一次apache,但是这似乎并没有解决问题,因为有时它仍然变得无法访问,重新启动是解决问题的唯一方法。 我想重申的不是我无法从外部访问,问题是我可以在某个时候停止工作,只能在内部工作。 如果我在主机文件的内部设置我的域指向127.0.0.1它的工作,所以我不知道什么问题可以,似乎是DNS相关,但只有重新启动Apache后,再次工作。 重新启动DNS我认为这个问题没有影响 谢谢。

apache2不接收TNS_ADMIN环境variables

我想在apache中设置2个环境variables: LD_LIBRARY_PATH TNS_ADMIN。 我把它们设置在:/ etc / apache2 / envvars中 前者是拾取并设置正确,但后者不是。 我试过设置一些随机variables的名字,他们似乎也没有拿起,所以它看起来这只是用于某些环境variables? 如果是这样,设置这个variables在Apache中使用的最佳方法是什么?

权限在apr_global_mutex_lock中被拒绝

我安装了apache tomcat连接器并成功configuration了所有设置,httpd服务也启动了,但是在加载网页的时候,却抛出了500个内部服务错误。 在错误日志中显示下面的错误: Permission denied: apr_global_mutex_lock(jk_log_lock) failed Permission denied: apr_global_mutex_unlock(jk_log_lock) failed Permission denied: apr_global_mutex_lock(jk_log_lock) failed Permission denied: apr_global_mutex_unlock(jk_log_lock) failed 安装了Apache连接器版本: 1.2.42 安装httpd版本: 2.4.28 这是我的httpd.conf文件 LoadModule jk_module modules / mod_jk.so JkWorkersFile /usr/local/apache/conf/workers.properties JkLogFile logs/mod_jk.log JkLogLevel emerg JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories JkRequestLogFormat "%w %V %T %p %q %r %v %U" […]

单个IP VPS – 如何在端口80上的不同域上运行apache / multiple nodejs?

我知道这不是最佳解决scheme 我有几个运行在端口80上的Apache网站 – 我想添加一个nodejs应用程序 – 在端口8000上正常工作。我正在使用此设置 http://physalix.com/reverse-proxy-for-nodejs-in-production-with-apache2-haproxy-and-monit/ 但它是相当不稳定的 – 我想知道是否有一个更干净的方法来做到这一点 – 我是一个初学者,试图让nginx工作,不成功(陷入了关于domain.crt和ssl和什么的错误) 有没有一个具体的教程如何成功地平衡和代理所有的应用程序端口80 – 基于不同的域和路由在不同的端口?