标签: apache-http-server

在 Debian 上调试 Apache,错误日志在哪里?

我使用的 Debian 服务器已经成功运行了 Apache、mod_wsgi 和一堆虚拟主机。

我安装了我的论坛应用程序(Django 的 OSQA)并按照OSQA 说明创建了一个指定ServerName为新子域的 Apache 配置文件。我还为应用程序创建了一个 .wsgi 文件,并指向WSGIScriptAlias它。然后我重新启动了Apache。

但是,当我转到新的子域时,收到 404 错误消息。

我错过了上面的一步吗?或者只是创建一个新的 Apache 配置文件sites-available足以告诉 Apache 一个新的子域?

如果还有其他问题,我该如何调试?配置文件中指定的ErrorLogCustomLog都为空。apache2.conf,我猜是 Apache 范围的配置,指定ErrorLog /var/log/apache2/error.log,但这是另一个空白文件。

debian apache-http-server logging

7
推荐指数
2
解决办法
6万
查看次数

我如何管理/var/www?

我是 Linux 新手,我正在尝试在运行 Ubuntu Server 的 VM 内设置一个小型测试服务器。我找到了 /var/www 文件夹,它应该是我存储 Apache 文档的文件夹,事实上,如果我访问我的 VM 的 IP,我会看到存储在那里的 index.html 页面。

我的问题是我无法写入该文件夹。

ls -l 返回:

d-w-r-xr-x 2  root root 4096 2011-12-28 16:08 ./ 
drwxr-xr-x 13 root root 4096 2011-12-28 17:02 ../ 
-rw-r--r-- 1  root root 177  2011-12-28 16:08 index.html
Run Code Online (Sandbox Code Playgroud)

我的用户叫gab.

处理此文件夹以允许自己在此处编辑和创建文件时,最好的做法是什么?我应该创建一个新组还是将自己设置为文件夹的所有者?

linux apache-http-server www documents permissions

7
推荐指数
1
解决办法
1847
查看次数

如何在单独的文件中记录 php 错误?

我刚刚将我的服务器升级到 Fedora 17,并将包含的一些配置文件合并.rpmnew到现有文件中。通过将以下内容保留在单独的日志文件中,我已成功地将我的 php 错误记录在php.ini

log_errors = On
error_log = /var/log/php-errors.log
Run Code Online (Sandbox Code Playgroud)

/var/log/httpd/error_log尽管保留了上述设置,但我不确定为什么在升级后仍会记录错误。

还,

$ ls -l /var/log/php-errors.log
-rwxrwxr--. 1 apache myself 232 Dec 13 16:49 /var/log/php-errors.log
Run Code Online (Sandbox Code Playgroud)

表明 apache 确实拥有 php 错误日志文件。

什么可能导致 PHP 错误被记录到 apache 错误日志文件中?

apache-http-server php error-logging

7
推荐指数
1
解决办法
9290
查看次数

将文件上传到我的 Apache 服务器

我最近在我的电脑上安装了 Apache HTTP 服务器。我有两个问题:

  1. 当我从浏览器输入我的 IP 时,我会看到一个文件/目录列表,就像在 FTP 服务器中一样。这是 Apache 或 Chrome 浏览器的内置功能吗?
  2. 更重要的是 - 如何将文件从远程计算机上传到服务器中的选定文件夹?我的时间真的很紧,我想可能有一种内置的方法可以做到这一点,但找不到。在那儿?

提前致谢

apache-http-server upload

7
推荐指数
1
解决办法
6万
查看次数

Apache 代理在连接到第三方时抛出错误

通过 PHP Curl 连接到某个第三方服务会引发此错误:

CURL error: Received HTTP code 403 from proxy after CONNECT
Run Code Online (Sandbox Code Playgroud)

代理上的 Apache 错误日志抛出:

Connect to remote machine blocked returned by remote.service.com:59315
Run Code Online (Sandbox Code Playgroud)

我想知道如何让它发挥作用!

代理配置:

<VirtualHost *:8001>
    ProxyRequests On

    <Proxy *>
        Order deny,allow
        Deny from all
        Allow from 10.
    </Proxy>

    ProxyVia Off

    <IfModule mod_headers.c>
        Header set P3P "policyref=\"/w3c/p3p.xml\", CP=\"NOI DSP COR NID CUR ADM DEV OUR BUS\""
    </IfModule>

    AllowCONNECT 443 1129 7934 8080 993
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)

从这个日志中可以看出,允许使用域 IP:

[error] [client 10.234.9.46] proxy: Connect to remote machine blocked returned by
Run Code Online (Sandbox Code Playgroud)

apache-http-server proxy php curl openssl

7
推荐指数
1
解决办法
5096
查看次数

具有自动身份验证的 Apache mod_proxy

我正在通过指令ProxyPassProxyPassReverse一些网址在 apache 中设置一个代理:

ProxyPass /mypath http://myotherserver.com
ProxyPassReverse /mypath http://myotherserver.com
Run Code Online (Sandbox Code Playgroud)

但是,myotherserver.com需要(基本)身份验证。如果我什么都不做,这个身份验证就会传递给最终的客户端。出于某种原因,我不希望这样,我想直接在我的 apache 配置中添加凭据。我怎样才能做到这一点 ?我试过:

ProxyPass /mypath http://user:pass@myotherserver.com
ProxyPassReverse /mypath http://user:pass@myotherserver.com
Run Code Online (Sandbox Code Playgroud)

但它似乎不起作用。在此先感谢您的帮助。

apache-http-server proxy

7
推荐指数
1
解决办法
2万
查看次数

Apache Alias 是否支持相对路径?

我正在尝试使用文档根目录中的相对路径为文件添加别名,如下所示:

Alias /js/jquery-1.9.1.min.js lib/jquery-1.9.1/jquery-1.9.1.min.js
Run Code Online (Sandbox Code Playgroud)

它不起作用,但我在文档中找不到关于相对路径的任何内容。

是否支持相对路径?

apache-http-server alias path

7
推荐指数
1
解决办法
1525
查看次数

如何查找并终止 php 循环(进程)?

我有一个我一直在开发的 php 脚本,它在循环中调用外部 api。它正在 Debian 上运行 LAMP 的 VPS 上进行测试。我今天早上注意到 api 没有响应我的脚本。当我打电话给供应商时,他们告诉我我的服务器在过去 10 个小时里每小时调用 api 1000 次。我假设一个 php 脚本(我前一天一直在工作并在我的 VPS 上测试)在其中一次执行过程中进入了一个无限循环,并且从未出现过(我一直在命令提示符下对其进行测试,并且不是通过网络。)我试图停止和启动 Apache,但 api 支持人员说呼叫仍然来自我的服务器地址。我怎样才能找到并停止这个过程?另外,Apache停止/启动是否有可能解决问题,

请原谅我没有正确使用我的本地测试环境。

编辑:我不知道进程名称,我需要根据行为发现名称(或 pid)。

apache-http-server command-line process php api

7
推荐指数
1
解决办法
6万
查看次数

真正阻止 Apache 2.4 在 Yosemite 上运行

我尝试启动和停止 Apache,我尝试停止 Apache 两次以确保我应该被停止

Mac-mini:~ jeud$ sudo apachectl start
Mac-mini:~ jeud$ sudo apachectl stop
Mac-mini:~ jeud$ sudo apachectl stop
/System/Library/LaunchDaemons/org.apache.httpd.plist: Could not find specified service
Run Code Online (Sandbox Code Playgroud)

但似乎我仍然可以使用http://localhosthttp://127.0.0.1从网络浏览器访问 Apache Web 服务器,我仍然收到来自Server:Apache/2.4.9 (Unix) PHP/5.6.2

我试过 sudo lsof -i -P | grep 80

httpd      554           root    5u  IPv6 0x8b96aa4ecd4e340b      0t0    TCP *:80 (LISTEN)
httpd      555           _www    5u  IPv6 0x8b96aa4ecd4e340b      0t0    TCP *:80 (LISTEN)
httpd      566           _www    5u  IPv6 0x8b96aa4ecd4e340b      0t0    TCP *:80 (LISTEN)
httpd      567           _www    5u  IPv6 0x8b96aa4ecd4e340b …
Run Code Online (Sandbox Code Playgroud)

apache-http-server osx-yosemite

7
推荐指数
1
解决办法
4640
查看次数

亚克力 DNS 代理无法解析

所以我最近遇到了一个更新问题,我降级到 Windows 8。因为我需要做我的工作,我重新安装了我的 XAMPP 服务器以及 Acrylic DNS 代理。

不幸的是,亚克力不起作用,我想我可能错过了一些东西。

我的 AcrylicHosts 文件如下所示:

127.0.0.1 localhost
127.0.0.1 *.local
Run Code Online (Sandbox Code Playgroud)

Apache 配置正确,如果我将手动条目添加到hosts. 我关闭了防火墙并重新启动了 Acrylic,但这并没有改变任何东西。我已经刷新了 DNS 缓存。我已经确保以太网 DNS 设置为 127.0.0.1。我确实看到了一个关于实际上必须连接以太网电缆来“激活”它或其他东西的建议,但这不起作用 - 此外我在使用 Windows 8.1 时不必这样做。

我还能做些什么让亚克力工作?

dns apache-http-server proxy hosts-file windows-8

7
推荐指数
1
解决办法
2437
查看次数