标签: apache-httpd

如何以非 root 用户身份重新启动 apache(使用 git-hook)?

对于一个特定的用户,我希望能够重新启动 Apache。该用户确实具有 sudo 权限,我可以运行sudo /etc/init.d/apache2 reload,但我想将此重启脚本包含在 git post-receive 挂钩中。所以这会提示输入密码并失败。所以问题是:在不需要 sudo 的情况下,允许该用户重新启动 apache 的正确方法是什么?我想将选项限制为仅重新启动 Apache,并且仅此特定用户。

root permissions git not-root-user apache-httpd

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

无法使用 127.0.0.1 访问本地主机

当我在浏览器的地址栏中输入 127.0.0.1 时,我得到以下结果:

Not Found

The requested URL / was not found on this server.

Apache/2.2.22 (Fedora) Server at 127.0.0.1 Port 80
Run Code Online (Sandbox Code Playgroud)

什么会导致这个问题?

fedora apache-httpd

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

从网站 URL 中删除目录级别

谁能告诉我如何配置 apache 以不在基本 URL 的末尾显示网站文件夹名称?- 但仅适用于众多网站之一。

让我描述一下场景......

我有一个测试服务器,里面有许多网站在单独的文件夹中/var/www。因为它是一个测试服务器,所以我通过它的 IP 地址 (64.244.144.78) 访问它。所以我会通过访问一个网站64.244.144.78/a_website_folder

当我需要其中一个名为 的站点applications具有子域名applications.ourorganisation.org而不是使用上述 IP 地址格式时,麻烦就开始了。

子域是由我们的 IT 人员在我们现有的 Windows 服务器上创建的。然后他将子域指向我的Linux测试服务器的IP地址64.244.144.78(显然他无法添加通向应用程序网站的子目录信息)。

为了解决这个问题,我创建了一个index.php文件64.244.144.78/var/www并使用 PHP 代码重定向到应用程序网站文件夹。

所有这些都有效,但我现在访问时applications.ourorganisation.org,我被重定向到applications.ourcompany.org/applications.

这不是一场灾难,但我希望最后没有applications目录名称。

hostname apache-httpd

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

无需指定目录即可执行程序?

为什么我必须输入/etc/init.d/apache2 (args)才能运行 apache?

就没有办法apache2 args吗??

ubuntu init-script apache-httpd

2
推荐指数
2
解决办法
237
查看次数

使用服务器名称而不是 IP 地址

在我的 Ubuntu 服务器中安装了 apache 2,我使用了许多 Web 应用程序,如 osc、glpi。

要浏览这些应用程序,我必须在浏览器中编写 @ip/glpi。我的目的是使用 servername 而不是 ip 地址。

做这个动作的方法是什么

系统信息:

Ubuntu 11.10

PHP 5.3.6

阿帕奇 2.2.20

MySQL 5.1.67

ubuntu apache-httpd

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

Web 服务器似乎一直在提供旧图像,Apache 和 VirtualBox 有问题吗?

我在这里问这个是因为我很确定这是一个 Linux 问题。

我在 Ubuntu Server 12.10 上本地运行 Apache 服务器,它在 Windows 7 上的虚拟机 (VirtualBox) 内运行。“www”目录在 Ubuntu VM 和我的 Windows 操作系统之间共享,使用 VirtualBox 的“共享文件夹”工具。

注意:它基本上是 Windows 中的本地目录。在 Ubuntu 中,它会在启动时自动挂载。

服务器也可以通过像http://192.168.56.101/website1.

问题是来自该 URL 的图像似乎已被缓存,直到我重新启动虚拟机。

例如:

http://192.168.56.101/website1/images/bg.png在 Ubuntu 上运行的 Apache 服务器上的 URL指向c:\www\website1\images\bg.pngWindows 共享上的这个文件。在 Ubuntu VM 中,它存在于/var/www/website1/images/bg.png.

如果我在 Windows 主机中的 Photoshop 中修改此文件,则在 Ubuntu 服务器中看不到更改。我怀疑 Linux 缓存了文件什么的,因为在重新启动 VM 后我会看到更新的图像。

有什么办法可以禁用/var/www目录下任何内容的缓存吗?这会降低性能还是什么?

ubuntu cache virtualbox apache-httpd

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

如何为 www-data 设置环境变量?

我在 dba.se 上问了一个问题,关于如何为我的 Perl CGI 脚本提供访问它需要查询的 MySQL 数据库所需的密码。我只收到了一个答案,但那个答案建议我将密码保存为环境变量。

好的,按照apache2运行,用户是:www-data/etc/passwd$HOME/var/www

$ grep www /etc/passwd
www-data:x:33:33:www-data:/var/www:/bin/sh
Run Code Online (Sandbox Code Playgroud)

我尝试/var/www/.profile用这条线创建

export db_pass="password"
Run Code Online (Sandbox Code Playgroud)

然后让我的 Perl 脚本打印$ENV{"db_pass"}但失败了,变量是空的。我检查了一下,$ENV{PATH}并按预期打印。

那么,如何为该用户设置任意环境变量?

该服务器是在 VM 上运行的 Ubuntu 服务器(在 Windows 上运行,不是我的选择,不要问)。

$ apache2 -version
Server version: Apache/2.2.14 (Ubuntu)
Server built:   Feb 14 2012 16:42:25
Run Code Online (Sandbox Code Playgroud)

environment-variables apache-httpd

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

Apache 如何解析error_log 的路径?

在我httpd.conf所在的地方/etc/httpd/conf/httpd.conf有一行:

ErrorLog logs/error_log
Run Code Online (Sandbox Code Playgroud)

但是日志文件的路径是: /var/log/httpd/error_log

Apache Webserver 如何解析 error_log 文件的路径?

logs apache-httpd

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

我将如何运行 php 脚本?

我不确定这是否与 Unix 相关,但我真的看不出它会是什么,如果它与 Unix 无关。我正在运行 Ubuntu 服务器,当有人按下按钮时,我试图在我的网站上执行 .php 脚本。虽然,当它触发脚本时,它只显示脚本代码,并没有实际运行它。我是否需要安装一些东西才能使这项工作?我可以确认这适用于实际的网络空间。我很感激我能得到的任何帮助!

ubuntu php apache-httpd

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

为什么 /var/www/html 只能由 root 写入(默认情况下)?

在设置 LAMP(在 Debian 上)然后查看 /var/www/html 的权限后,我很惊讶它只能由 root ( drwxr-xr-x 1 root root)写入。

据推测,PHP 脚本可以在 /var/www/html 中创建文件,但是 PHP 脚本(或其解释器)肯定不会以 root 的名义运行?任何人都可以帮助我理解我的误解吗?

编辑:

我安装了 PHP apt-get install php5-common libapache2-mod-php5 php5-mysql php5-cli

permissions debian web apache-httpd

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