Articles of apache 2.4

Apache2.4 – PHP 5.6和PHP7.1同时运行

我正在寻找运行PHP 5.6和7.1在我的开发服务器,与Apache。 我知道Nginx可以轻松处理这个,但是我真的需要Apache。 这里很confs # My main configuration file, running with PHP7.1 <VirtualHost xx.xx.xx.xx:80> ServerName www.mydomain.com ServerAlias mydomain.com DocumentRoot /var/www/mydomain.com/html </VirtualHost> <VirtualHost xx.xx.xx.xx:80> ServerName xx.xx.xx.xx <Directory /> Deny from all </Directory> </VirtualHost> # PHP 5.6 <VirtualHost xx.xx.xx.xx:80> ServerName foo.mydomain.com DocumentRoot /var/www/foo.mydomain.com/html <FilesMatch \.php$> SetHandler "proxy:unix:/var/run/php/php5.6-fpm.sock" </FilesMatch> </VirtualHost> 7.1正在工作,而5.6返回一个404.谢谢!

apache – 在Ajax请求,2分钟后返回“不允许”

我在PHP中创build了一个小应用程序,其中一个模块是通过Ajax“导入”数据。 它是如何工作的: 用户点击“开始” Ajax函数发送POST请求(一次性使用)到“在后台”工作的后端方法 完成所有操作后,返回响应。 在我的开发env的思想是好的,进程可以运行多less需要,但在另一台服务器每次2分钟后。 返回“方法不允许”,所以我有问题: – 这个服务器运行在Apache 2.4 – Apache的configuration超时的请求? 或者,也许有人有另一个想法,问题在哪里?

Apache和PDO奇怪的ODBC崩溃

我在stackoverflow问这个问题,但我认为这是更合适的张贴在这里: 我已经安装Apache 2.4.27 64位从Apache的rest室在Windows Server 2008 R2与PHP 7.1.7 64位 我安装了vc ++ redistributables。 所有工作良好,除非我在php.ini中启用php_pdo_odbc.dll扩展名 当我运行一些查询(针对db2数据库)有时我得到了预期的结果,但经常收到来自服务器的空响应。 如果我看开发人员工具有这个错误ERR EMPTY RESPONSE 另外在Windows错误registry中有ODBC和Apache崩溃(同时出现)这个消息的报告: 在d:\ w7rtm \ enduser \ databaseaccess \ src \ mdac \ odbc \ core \ dm \ utsem.cpp(573)中出错,参数不正确。 :UTSemReadWrite:UnlockWrite中的ReleaseSemaphore失败 如果我禁用php_pdo_odbc.dll所有工作正常,但我不能使用PDO,这是不好的。 任何想法是怎么回事? 编辑:我运行在我个人的Windows 10 PC上相同的configuration,它的作品完美。

在Apache HTTPD重新加载或重新启动期间无法创build共享内存段错误

我一直在试图find一个解决scheme这个星期现在..每个星期天早上当logrotate运行,我们的生产Apache HTTPD 2.4.6服务器死亡与以下错误: [Sat Jul 29 13:26:26.337757 2017] [tile:error] [pid 25708:tid 139799897110496] (17)File exists: Failed to create shared memory segment on file /tmp/httpd_shm.25708 [Sat Jul 29 13:26:26.337775 2017] [:emerg] [pid 25708:tid 139799897110496] AH00020: Configuration Failed, exiting 以上是从我刚刚手动运行logrotate。 当我试图重新启动服务器后,我得到了另一个类似的错误,但与现在不同的PID ..在我重新启动logrotate之前,我看了Apache进程,他们还在另一个PID .. [Sat Jul 29 13:26:55.401228 2017] [suexec:notice] [pid 25759:tid 140120731674592] AH01232: suEXEC mechanism enabled (wrapper: /opt/rh/httpd24/root/usr/sbin/suexec) […]

Apache 2.2或2.4:将`Action`指向`/ cgi-bin`目录而不是脚本是否有效?

我正在使用Puppet apache模块,并且正在研究它的虚拟主机configuration代码。 其中一个选项是添加一个“Action”指令,但Action指令总是以这种格式添加,其中(handler)是传递给configuration代码的处理程序的名称。 Action (handler) /cgi-bin virtual 我希望这会失败,因为/cgi-bin通常是一个目录,而不是cgi脚本本身。 在这种情况下,Apache是​​否在2.2或2.4版本中做了一些特殊的事情,或者这种configuration是否被破坏? 提前致谢, – 约翰逊

apache 2.4.6 vhosts + mod_proxy获取AH00872:APR_BUCKET_IS_EOS

我使用VH和代理服务多个后端tomcat实例。 目前正在用JSP文件追赶这个问题。 代理通过ajp:// localhost:8009 / MYAPPTAG /获取tomcat的正确URL。 我在日志中看到连接已经完成。 然而,被调用的JSP似乎没有做任何事情,只是默默地失败了。 AH01628:授权结果:授权(无指令)AH01143:运行schemeajp处理程序(尝试0)AH00895:服务URL ajp://localhost/tomcat-context/code.jsp AH00944:将ajp://localhost/tomcat-context/code.jsp连接到本地主机:8009 AH00947:连接/tomcat-context/code.jsp到本地主机:8009 AH00872:APR_BUCKET_IS_EOS AH00873:要读取的数据(最多8186 4)AH00875 :得到0字节的数据AH00892:得到[:: 1]的响应:8009(本地主机) 我很难过 任何指针在哪里/如何debugging呢? 哦,因为我知道绝对零HTML,这个职位将被打破。 -weq

Apache停止使用大量的虚拟主机

我在CentOS 7上使用的是Apache 2.4.6,我们在这个服务器上运行的VirtualHost数量(大约500+),包括SSL / Non-SSL。 大多数虚拟主机使用mod_proxy_balancer负载均衡的节点。 所以,现在我开始面对configuration新网站/ VirtualHost的问题。 当我添加新的VirtualHost并重新启动apache我得到日志中的错误。 [auth_digest:notice] [pid 64800] AH01757: generating secret for digest authentication … [lbmethod_heartbeat:notice] [pid 64800] AH02282: No slotmem from mod_heartmonitor [core:emerg] [pid 64800] (28)No space left on device: AH00023: Couldn't create the proxy-balancer-shm mutex [proxy_balancer:emerg] [pid 64800] (28)No space left on device: AH01180: mutex creation of proxy-balancer-shm : […]

在Apache中,我如何configuration一个子URLredirect到socket.io?

我有一个简单的node.js websocket服务器: var io = require('socket.io')(12345); io.on('connection', function(socket){ console.log('a user connected'); socket.on('disconnect', function(){ console.log('user disconnected'); }); socket.on('test', function(msg){ console.log('test msg: ' + msg); io.emit('test', 'Test answer'); }); }); 我连接到它,它与iocat正确响应: me@whatever:~/prj/client$ iocat –socketio ws://localhost:12345 -e test > adsa > [ 'Test answer' ] 所以现在我想configurationApache服务器的sslredirect到我的项目的某个子url到这个websocket 我有一个Apacheconfiguration为在https:// localhost / prj服务我的项目 我想在https:// localhost / prj / socket中使用websocket 所以searchnetworking,所以我find了两种可能的方式来做到这一点: 1 […]

如何在mod_wsgi的相同域(apache2)上运行Django和PHP?

我想在同一个域中运行Django和PHP(例如,当我访问192.168.14.10时,索引页面正确显示,PHP从索引页面调用)。当我运行下面的代码时,HTML代码中的数据只是完整的PHP和PHP的代码不起作用。 HTML(myproject / templates / test.html) <body> <form id="form_test"> <button type="button" onclick="exec_php()">Send</button> <script> function exec_php() { var formdata = new FormData($('#form_test').get(0)); $.ajax({ url: "../testphp", type: "POST", data: formdata, cache: false, contentType: false, processData: false, dataType: "text" }) .done(function (data, textStatus, jqXHR) { alert("data: " + data); }) .fail(function (jqXHR, textStatus, errorThrown) { alert("fail"); }); } […]

尝试将池用作不同的用户时出现Apache 2.4和PHP7.0-FPM问题

我目前正在试图从PHP 5.6升级到PHP 7.0的开发机器。 我们目前的设置使用PHP-FPM池来使多个站点运行在Apache 2.4实例上,每个站点都有自己的Linux用户。 在PHP 5.6下,一切正常,每个站点都以自己的Linux用户身份运行。 但是,一旦安装了PHP 7.0,事情似乎没有按计划进行。 问题似乎是PHP7.0-FPM带有一个名为/etc/php/7.0/pool.d/www.conf的池,我在/etc/php5/fpm/pool.d没有这个池。 www.conf包含以下代码: ; pool name ('www' here) [www] … user = www-data group = www-data … listen = /run/php/php7.0-fpm.sock … listen.owner = www-data listen.group = www-data … 这基本上是池的默认configuration,我没有改变这个文件中的任何东西。 如果我删除池,我的网站都没有工作,如果我修改user行,他们作为该用户运行,这意味着我所有的网站都使用这个池。 然而,我在/etc/apache2/sites-enabled/subdomain.domain.com.conf虚拟主机中定义的套接字与在/etc/php/7.0/fpm/pool.d/subdomain.domain.com.conf定义的相同/etc/php/7.0/fpm/pool.d/subdomain.domain.com.conf ,它出现在/run/php/php7.0-fpm_subdomain.domain.com.sock 。 我认为这可能是我的Apacheconfiguration的问题,但我似乎无法发现任何错误,即使在线复制了许多教程。 /etc/php/7.0/pool.d/subdomain.domain.com.conf包含以下代码: [subdomain.domain.com] user = myUser group = myUser listen = /run/php/php7.0-fpm_subdomain.domain.com.sock listen.owner = […]