Articles of httpd

Apacheredirect到其他服务器与子域

我目前正在运行托pipe我的networking和gitlab服务器的CentOS以及托pipe一个亚音速服务器的Windows机器。 目前,我的IP指向CentOS,但没有正确redirect。 我能够访问/但无法访问任何其他网站的子域,尽pipe我已经做了设置,所以我想知道我要去哪里错了,如何纠正这个问题。 当人们inputhttp://git.example.com ,是否也可能自动将其redirect到https://git.example.com ? 提前致谢! NameVirtualHost *:80 #This should lead to subsonic server <VirtualHost *> ServerName music.company.com ServerAlias www.music.company.com ProxyRequests Off <Proxy *> Order deny,allow Allow from all </Proxy> ProxyErrorOverride On ProxyPass / http://192.168.1.14:6060/ ProxyPassReverse / http://192.168.1.14:6060/ <Location /> Order allow,deny Allow from all </Location> </VirtualHost> Gitlab.conf LoadModule ssl_module modules/mod_ssl.so SSLSessionCache "shmcb:logs/ssl_scache(512000)" <VirtualHost […]

chkconfig在各级显示closures,但它正在运行

在我的CentOS6机器上, chkconfig显示如下的httpd ,但每次重启系统时都会自动运行。 httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off 我可以检查更多的知道哪个init逻辑使它成为? 请注意,我的同事在/opt/lampp目录下安装了lampp, ps aux显示如下。 USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND daemon 2159 0.0 0.3 432752 5368 ? S 01:57 0:00 /opt/lampp/bin/httpd -k start -E /opt/lampp/logs/error_log -DSSL -D

HTTP到HTTPS与mod_rewrite; Apache需要重启

我刚刚注册,这是我的第一个问题。 如果我需要在别的地方问问,请告诉我。 我们需要为SSLconfiguration站点,并将所有HTTP通信redirect到HTTPS。 我们决定使用mod_rewrite,因为我们已经使用了一些重写规则。 这些变化在我们的开发环境中进行了testing,并且按预期工作。 我们对生产进行了改变,发现它工作了几个小时,但最终开始失败,网站变得不可用。 一旦Apache服务重新启动,该站点恢复。 不幸的是,它不会持久,最终需要重复。 有人提到我的一些指导,说mod_rewrite不build议,并使用VirtualHosts来代替。 我想了解为什么这是首选的方法,并希望find我们遇到的问题的根源。 我们刚刚closures了重写规则,网站在443和80上都稳定下来。 https://wiki.apache.org/httpd/RewriteHTTPToHTTPS “注意:使用mod_rewrite来做到这一点不是推荐的行为” https://wiki.apache.org/httpd/RedirectSSL “虽然推荐这个解决scheme是因为它更简单,更安全,但也可以使用mod_rewrite来获得与此处所述相同的效果” 有没有人知道为什么这是build议通过mod_rewrite的具体细节? 类似的经验? 关于下一步的build议? Apache 2.4.18 在Windows Server 2008 R2上运行 我们尝试了MaxConnectionsPerChild 0和其他值没有区别。 我看到MaxConnectionResetsPerChild在“中断”期间到达,这些重置似乎不能解决问题..而不是手动重新启动Apache服务/父进程。 RewriteEngine On RewriteCond %{HTTPS} !=on RewriteRule ^/?(.*) https//wontletmepostlink.duetorep/1$ [R,L]

Fail2banlogging正确的IP在光油,但仍然没有locking

我试图configurationfail2ban禁止不良的WordPresslogin尝试,但我没有太大的成功。 我正在使用WP fail2ban 3.0.0 ,正确地logging/var/log/secure上的错误login尝试,据我所知(如果有人感兴趣,我提供下面我的插件configuration): Apr 19 18:21:42 droplet wordpress(website.com)[17157]: Authentication failure for admin from my.ip.add.ress 该filter似乎也被正确configuration。 事实上,如果我运行fail2ban-client status wordpress我可以看到我的IP被禁止: Status for the jail: wordpress |- Filter | |- Currently failed: 2 | |- Total failed: 15 | `- File list: /var/log/secure `- Actions |- Currently banned: 1 |- Total banned: 1 `- Banned IP […]

GeoIP PHP扩展不支持CentOS 7

我无法在CentOS 7和PHP 5.5.21上获得GeoIP PHP扩展。 我首先用yum install php-pecl-geoip并重新启动httpd。 然后我做了一个简单的testing: $record = geoip_record_by_name($_SERVER["REMOTE_ADDR"]); if ($record) { print_r($record); } 我得到了一个错误500,并在错误日志中,我看到 PHP Fatal error: Call to undefined function geoip_record_by_name() 所以我觉得yum软件包很糟糕,并删除它。 然后,我做了pecl install geoip并启用了扩展名为/etc/php.d/geoip.ini的extension=geoip.so并重新启动了httpd。 相同的错误 – 未定义的function。 为了确保安装正确,我再次尝试了pecl安装并收到了这个输出: pecl/geoip is already installed and is the same as the released version 1.0.8 我确实安装了Apache的mod_geoip。 做两个冲突吗? 我还能检查什么?

基于Web的Log Parser for mod_log_sql

我们的前端Web服务器现在使用mod_log_sql将所有的weblogslogging到mySQL中,在我们的apacheconfiguration中释放了数千个“AccessLog”指令(我们现在在我们的服务器上运行600-900个虚拟主机) 这就是说,我试图find一个合理的博客分析器与mod_log_sql工作。 我已经使用webalizer&awstats多年了,我真的很喜欢它们,但是这两个工具都不支持基于SQL的日志logging。 它不一定是实时的,但它至less必须能够从数据库表中获取数据。 任何人有任何build议?

在生产服务器上更新Apache conf的正确步骤?

我通常: 更新我的本地near-replica(ServerName指令和日志显然是不同的)生产conf文件,并作出改变,如重写规则的东西。 /etc/init.d/apache2重新启动或本地优雅,并确保它的工作 将conf文件scp到生产服务器 apache2ctl configtest apache2ctl优雅 我从来没有真正遵循任何指导,只是拿起一些命令。 这通常是这样做的方式? 我几乎总是在生产服务器上使用优雅的,因为我不想丢失客户端完全重新启动 – 优雅的重新启动是相当普遍的,对吧? 在任何情况下,优雅是不够的,我需要做一个完整的重新启动?

Apache:反向代理从另一台服务器处理PHP

我有以下设置: Plain-Server :以纯文本格式传送php文件 Proxy-Server :询问Plain-Server的php文件并parsing它。 现在我的问题:我如何configuration代理服务器(一个完全可configuration的Apache 2.2与PHP 5.3)来解释从普通服务器的纯PHP文件? 例如:在Plain-Server上指定一个小的php脚本“hello.php”(可通过http://plainserver/hello.php访问): <?php echo "Hello World"; ?> Plain-Server只输出纯文本,不parsingphp代码。 在代理服务器上,文件“hello.php”不存在。 但是当从代理服务器请求hello.php时,它应该使用mod_proxy(反向代理)从Plain-Server获得hello.php。 它也应该parsing和执行PHP,只说“Hello World”。 反向代理已经在运行,但执行php代码不起作用。 我试过mod_filter,但不能使它工作。 任何想法如何? (注:也张贴在stackoverflow.com)

PHP安全模式/ open_basedir – lstat性能问题

在读取文件之前,PHP多次查看完整path。 而这种情况发生时,在Apache HTTPDconfiguration指定PHP_ADMIN_VALUE open_basedir设置或如果safe_mode是ON 。 如果我有一个简单的网站只有phpinfo.php页面,里面我们只有“”。 考虑我们有最新版本的httpd(2.2.15)和PHP(5.2.13或5.3.2)。 如果我们在虚拟主机configuration中指定safe_mode = on或PHP_ADMIN_VALUE open_basedir : <目录“/ usr / local / myspace / webspace / httpdocs”> PHP_ADMIN_VALUE open_basedir“/ usr / local / myspace / webspace” </目录> <VirtualHost *:80> ServerName damorealt.xoom.it DocumentRoot“/ usr / local / myspace / webspace / httpdocs” CustomLog / var / log / httpd / damorealt […]

查看共享主机上安装的httpd / lighttpd模块

我没有访问这个共享主机上的httpd.conf文件,但我想看看哪些模块被启用/安装。 有没有一个(简单)的方法来找出没有访问httpd.conf文件? 例如,使用PHP,您可以运行一个包含phpinfo()的文件来获取PHP信息。 任何类似的东西? Web服务器是lighttpd,据我所知,它大多与apache httpd兼容。 (是的,我要通过电子邮件的托pipe支持,但它肯定会很高兴知道未来)