问题标签 [apache2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - phpmyadmin 安全
我有一个带有 apache2、php、mysql 的生产服务器。我现在只有一个站点(mysite.com)作为虚拟主机。我想把 phpmyadmin、webalizer 和 webmin 放在那里。到目前为止,我安装了 phpmyadmin,它可以工作,但整个互联网都可以访问 mysite.com/phpmyadmin
如何将可见性降低到 192.168.0.0/16,以便防火墙后面的机器可以访问它?
django - mod_wsgi(守护进程)站点是否将内容移交给 apache 以提供给客户端?
我在 apache2.2 的守护进程模式下使用 mod_wsgi 部署了 Django。因此,在 Django 生成内容之后,它是否将所有内容都从那里移交给 apache 以使其以其优化的荣耀提供服务,或者 Django 在此服务步骤中是否仍以某种方式征税?
php - 在 PHP 中包含不同类型的文件
我接手了一个 PHP 项目,并试图让它在我的开发盒上运行。我是开发人员而不是系统管理员,所以我无法让它正常工作。
以前的开发人员使用 .h 文件来包含 PHP。我当前的配置是采用该 .h 文件并包含它而不执行它。我需要在我的 apache 配置(或者是我的 php.ini)中寻找什么?
编辑:
当我阅读下面的评论之一时,有些东西点击了。该代码使用 ASP 样式标签“ <?
”。我已经在 php.ini 中打开了该选项,根据 phpinfo(),它已启用,但 apache 仍然只是将代码包含为文本。
我刚刚检查了它并使用完整的开始 PHP 标记“ <?php
”运行代码解决了这个问题。话虽如此,我仍然希望它以另一种方式工作。
我正在使用最新版本的 Macbook 上运行代码。PHP 5.2.6、postgresql 8.3 和 apache 2。
该代码在登台服务器上工作,但我无法弄清楚它有什么区别。
编辑
Durrr...我没有在 php.ini 中启用 short_open_tags。
apache2 - 带有 mod_perl 的 Apache2,它不遵循符号链接;我怎样才能解决这个问题?
mod_perl/apache
似乎无法遵循符号链接。
在httpd.conf
我有:
如果/var/www/cgi-bin/Test1
是一个包含 的目录Test.pm
,那么它可以工作。如果它是包含Test.pm
( /var/www/cgi-bin/test1/
) 的目录的符号链接,那么它会失败:
我检查了权限,它们看起来还可以。
谢谢你的帮助。
apache - 我怎样才能有条件的 .htaccess 块?
这是您以前可能遇到过的 Apache 问题。我想要一个可以部署到我的工作站、登台服务器和生产服务器的源包,但它可以根据 URL 加载不同的 .htaccess 设置。
请注意,我正在使用带有 IfModule 调用的 kludge,但这不适用于我们的新生产服务器,因为它与我的登台服务器共享所有相同的模块。
注意我需要将 SetEnv 与这些重写捆绑在一起。目前,如果您使用 RewriteCond,它仅与以下 RewriteRule 相关联,而不与下面的 SetEnv 相关联。
django - Django / mod_wsgi / postgresql_psycopg2: can't connect authentication failed (但设置在django runserver或dbshell下工作正常)
我正在从头开始设置的 Ubuntu 8.10 服务器上部署我的 django 站点。我对此完全陌生,所以可能有很多我错过的东西,但很高兴我找到了部署网站的方法。
我的最后一个障碍:
我在使用 postgresql 时遇到身份验证错误
笔记:
- 相同的设置在 runserver 和 dbshell 下工作正常
- mod_wsgi 一直在使用 sqlite3(我正在切换)
acacian.wsgi(有点乱)
谢谢!
apache2 - OpenSUSE 11.1 上的 Apache2 libapreq2
我正在尝试将基于 Apache2/mod_perl2/Perl 的软件安装到 OpenSUSE 11.1 机器上。
libapreq2 似乎不在 OpenSUSE 存储库中的任何位置,并且 CPAN 不会安装它,因为我的 mod_perl 来自包管理器,而不是来自源代码。
我真的宁愿坚持使用此安装的软件包,而不是从源代码 tarball 构建,因为我希望软件包升级和安全补丁能够正常工作。
有人知道我错过了什么吗?
PS:是的,我知道它在 Debian/Ubuntu 发行版中“正常工作”:-)。
ubuntu - Apache 2 中的“捕获 SIGWINCH”错误是什么?
我的服务器(ubuntu 8.04)运行drupal 6的LAMP,当流量很大时,它会停止提供页面。重新启动 apache2 将不起作用,所以我必须重新启动服务。
我在 apache2 error.log 中发现了这条消息
[通知] 抓到 SIGWINCH,优雅关闭
我还注意到 apache2 的进程 id 在 apache 停止响应时大约为 12000。
更新
正如您所指出的,捕获的 SIGWINCH 是 apache 服务重新启动的通知。我与最大客户一起玩并保持活力。我将 MaxClients 设置得太低,因此出现“服务器已达到 MaxClients 设置,请考虑提高 MaxClients 设置”错误,但已解决此问题。
关于 PID,我的安装已经安装了prefork 模块,所以在达到MaxRequestPerChild之后,它会回收子进程。这就是 PID 周期性上升的原因。仍然没有弄清楚为什么一段时间后apache停止响应。
与此同时,将尝试提高 MaxRequestPerChild,这样 PID 就不会那么快地达到 PID max。当前限制为 32768(这是新的 debian 和 ubuntu 安装的标准)。
以下是日志中的更多内容:
[Fri Apr 24 01:48:56 2009] [notice] 抓到 SIGWINCH,优雅关闭
[Fri Apr 24 01:50:07 2009] [notice] Apache/2.2.8 (Ubuntu) PHP/5.2.4-2ubuntu5.3 配置了 Suhosin-Patch -- 恢复正常操作
[2009 年 4 月 24 日星期五 17:13:35] [错误] [客户端 195.70.62.131] 客户端发送了没有主机名的 HTTP/1.1 请求(参见 RFC2616 第 14.23 节):/w00tw00t.at.ISC.SANS.DFind:)
[2009 年 4 月 24 日星期五 17:36:00] [错误] [客户端 212.188.33.4] 客户端发送的 HTTP/1.1 请求没有主机名(参见 RFC2616 第 14.23 节):/w00tw00t.at.ISC.SANS.DFind:)
[2009 年 4 月 25 日星期六 20:05:07] [错误] [客户端 84.243.222.12] 请求 GET HTTP/1.1 HTTP/1.1 中的 URI 无效
[2009 年 4 月 25 日星期六 20:05:12] [错误] [客户端 84.243.222.12] 找不到脚本或无法统计:/usr/lib/cgi-bin/twiki
[2009 年 4 月 25 日星期六 20:05:12] [错误] [客户端 84.243.222.12] 找不到脚本或无法统计:/usr/lib/cgi-bin/wiki
[2009 年 4 月 25 日星期六 20:05:12] [错误] [客户端 84.243.222.12] 找不到脚本或无法统计:/usr/lib/cgi-bin/wikis
[2009 年 4 月 25 日星期六 21:46:46] [错误] [客户端 211.68.23.167] 请求 GET HTTP/1.1 HTTP/1.1 中的 URI 无效
[Sun Apr 26 06:13:47 2009] [error] [client 86.39.154.89] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:)
[Sun Apr 26 06:53:07 2009] [notice] 请求优雅重启,正在重启
perl - Apache2 mod_perl Last-Modified 标头被忽略
我有一个 perl 生成的页面。此页面的内容每 30 分钟更改一次,因此我将 $r->set_last_modified() 设置为内容上次更改的时间。
一切正常,我可以看到正确的标题到达我的浏览器。
当我刷新页面时,我看到我的浏览器在对服务器的请求中使用了正确的“If-Modified-Since”标头,但 Apache2 忽略了这一点并重新发送了整个页面。
如何让 Apache2 正常运行并以“HTTP/1.x 304 Not Modified”响应?
(“last-modified”/“if-modified-since”标头在从同一个 Apache2 进程请求静态内容时得到正确处理。)
谢谢你的帮助。
编辑:我的期望错了吗?我是否必须在我的 perl 脚本中显式处理入站 If-Modified-Since 标头?
apache - Apache 重写某些 url 以分隔代码库的一部分
为了这个例子,基本上我有 2 个独立的代码库,v1 和 v2。我想将 v1 站点的某个区域重定向到 v2,以便我们可以定期将旧代码移植到新代码。
现在,我以前做过这种确切的代码移植,我只是不记得确切的细节以及我们是否做了一些 apache voodoo 来让它工作。这一次我可以让它命中 v2 代码,但随后的请求使用 v1 vhost,因此 v2 请求的图像正在转换为 v1 的路径并且不存在。
所以我希望 domain1.com/foo/bar 被重定向到 v2 代码库,在 v1 vhost(在 /home/domain1 下)我有:
这成功捕获了请求并将其传递给 v2 代码库,但随后 v2 代码库继续使用 v1 虚拟主机。显然我希望它能够访问 v2 代码库并开始使用该虚拟主机,但不使用外部重定向 [R]
重写日志的输出如下:
任何人都可以帮助完成最后一步!?