标签: apache-http-server

如何让 Apache 访问我的主目录中的文件?

我是运行 Apache 的 Ubuntu Linux 用户 (Lucid Lynx)。我的主目录 (~/zip_files) 中的一个文件夹中有一个 zip 文件集合,我希望能够通过 apache 链接到该文件夹​​,这样当有人访问我使用 Apache 托管的网站时,单击链接到其中一个 zip 文件,他可以通过网络下载该文件。如何向 Apache 提供对文件的访问权限并设置权限?谢谢,我是linux新手!

apache-http-server permissions ubuntu

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

对 apt-get Upgrade 的恐惧:它会破坏我的网站吗?

好的,我有一个在 Ubuntu 机器上管理的网站,但我已经有一段时间没有更新 apache2 了。我想了解最新的安全补丁等。

问题是我没有测试或质量保证服务器或任何可以“实验”的东西,我不想破坏我的网站。

在相当活跃的网站上进行 apt-get 更新/升级到 apache2 有哪些风险?

apache-http-server ubuntu apt-get

5
推荐指数
1
解决办法
2064
查看次数

apache 不会遵循符号链接 | 403 权限被拒绝

我使用的是 Ubuntu 14.04,并且 Apache 配置有问题:

我创建了一个符号/var/www/html链接/home/me/myWebDirectory

localhost/myWebDirectory呈现一个

403-权限被拒绝

事实上,sudo -u www-data ls /home/me/myWebDirectory也返回拒绝许可

apache2.conf 有以下指令:

<Directory /var/www>
           Options Indexes FollowSymLinks
           AllowOverride None
           Require all granted
 </Directory>
Run Code Online (Sandbox Code Playgroud)

我把它改成了<Directory /var/www/html>,但没有结果。

我尝试使用此命令添加me用户,但这也没有帮助www-data groupsudo usermod -a -G groupName userName

我错过了什么?

编辑:我将组更改/home/me/myWebDirectory为具有 rx 权限的 www-data,但也没有成功......

正如我所说,我很清楚我遇到了阅读权限问题,因为这也sudo -u www-data ls /home/me/myWebDirectory给我返回了权限被拒绝的信息(这意味着 www-data 无权查看其中的内容)。

但我需要你的回答中的某些观点更清楚:

另外,您应该使用 url“localhost/html”而不是“localhost/myWebDirectory”。

实际上我已经制作了如下符号链接:

  • cd /var/www/html
  • ln -s /home/user/me/myWebDirectory myWebDirectory

所以我认为访问localhost/myWebDirectory是正确的地址,不是吗?

chown -R …

linux apache-http-server permissions ubuntu

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

将所有 HTTP 流量重定向到 HTTPS,包括子域

我正在尝试将所有HTTP流量重定向到HTTPS包括子域。我使用 cPanel 在他们的共享主机上使用 FastComet 设置了域。我喜欢重定向的一些例子。

http://www.example.com      ->     https://www.example.com
http://example.com          ->     https://example.com
http://www.example.com/mail ->     https://www.example.com/mail
http://example.com/mail     ->     https://example.com/mail
http://mail.example.com     ->     https://mail.example.com
Run Code Online (Sandbox Code Playgroud)

我试过在我的.htaccess文件中添加以下内容

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteCond %{HTTP_HOST} ^(.+\.)?mydomain\.com$
RewriteRule ^(.*)$ https://%1mydomain.com/$1 [R=301,L]
Run Code Online (Sandbox Code Playgroud)

而且更一般

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
Run Code Online (Sandbox Code Playgroud)

但他们没有重定向http://mail.example.comhttps://mail.example.com,同时重定向http://example.com/mailhttps://example.com/mail的作品。我缺少什么设置?

apache-http-server https redirection htaccess cpanel

5
推荐指数
1
解决办法
3508
查看次数

在 Docker 内对 Apache 使用 ksm_preload

我正在尝试在 Docker 内使用ksm_preload for Apache。问题是在 Docker 中运行时该库没有被映射。在外面它可以工作,我看到共享/易失性页面。我认为问题出在 apache 中的某个地方,因为在具有相同 LD_PRELOAD 参数的同一容器中运行的其他应用程序(如 apt)显示 KSM 中的活动。

运行 make install 后,我在 docker 容器内尝试了以下操作

LD_PRELOAD=/usr/local/share/ksm_preload/libksm_preload.so apache2ctl -k start -D FOREGROUND
Run Code Online (Sandbox Code Playgroud)

我还尝试设置/etc/apache2/envvars工作进程:

export LD_DEBUG=all
export LD_PRELOAD=/usr/local/share/ksm_preload/libksm_preload.so
Run Code Online (Sandbox Code Playgroud)

父进程获取映射的库,但子工作进程则不获取。

父进程的/proc/pid/map_files:

7f2e13aef000-7f2e13af1000 -> /usr/local/share/ksm_preload/libksm_preload.so
7f2e13af1000-7f2e13cf0000 -> /usr/local/share/ksm_preload/libksm_preload.so
7f2e13cf0000-7f2e13cf1000 -> /usr/local/share/ksm_preload/libksm_preload.so
Run Code Online (Sandbox Code Playgroud)

总是出现以下结果:

/sys/kernel/mm/ksm/pages_shared:0
/sys/kernel/mm/ksm/pages_sharing:0
/sys/kernel/mm/ksm/pages_to_scan:100
/sys/kernel/mm/ksm/pages_unshared:0
/sys/kernel/mm/ksm/pages_volatile:0
/sys/kernel/mm/ksm/run:1
Run Code Online (Sandbox Code Playgroud)

LD 调试输出相当长https://pastebin.com/KRvKHXxn

apache 有某种针对 LD_PRELOAD 的保护吗?

是否可能有另一个具有更高优先级的动态库覆盖符号?

也许相关:/sf/ask/936196831/ 尝试了解决方案UNSET_RTLD_DEEPBIND=1,没有变化

linux apache-http-server docker

5
推荐指数
0
解决办法
633
查看次数

Firefox + HSTS + 自签名证书 + 内网

我有一台 Windows 10 计算机,它通常在没有互联网连接的情况下运行。我有一个2.4在该机器上运行的 Apache 服务器(版本)(ServerName localhost),它实际上托管了各种网站(例如,www.youtube.com-我知道...幽默我)。有多个域,但我将使用该域作为示例。

我解决这些域127.0.0.1的的%WINDIR%\system32\drivers\etc\hosts文件,我可以解决/平他们就好了。

我已将其定义www.youtube.comVirtualHostinhttpd.conf并且我已将其定义为 SSL 配置文件中的域。几个月前,这一切都运行良好,即在 Firefox 中我能够浏览http://www.youtube.comhttps://www.youtube.com就好了。对于网站的 https 版本,我确实必须创建自签名证书,并将它们安装到 Firefox 的 cert db,但这一切都有效。

好吧,现在它不再起作用了。我正在运行 Firefox 版本57.0.1 (32-bit)。我收到了我们都见过的这个错误:

您的连接不安全

[DOMAIN] 的所有者对其网站的配置不正确。为保护您的信息不被盗用,Firefox 未连接到本网站。

该站点使用 HTTP 严格传输安全 (HSTS) 来指定 Firefox 只能安全地连接到它。因此,无法为此证书添加例外。

当我点击高级...

[DOMAIN] 使用了无效的安全证书。

该证书不受信任,因为它是自签名的。

错误代码:SEC_ERROR_UNKNOWN_ISSUER

我尝试了很多解决方案……生成新证书、禁用 Firefox 的Query OCSP responder servers to confirm the current validity of certificates设置、清除缓存、使用新配置文件启动 Firefox、删除cert8.db文件、改用 …

security firefox apache-http-server certificate ssl

5
推荐指数
1
解决办法
3896
查看次数

为什么当 top 和 htop 显示较少时 systemctl 显示高内存使用率?

我正在运行 apache2.4 Web 服务器,并注意到当我运行systemctl status apache2或运行时service apache2 status,它说它使用的是 4.2GiB 的 RAM,这对于我拥有的 RAM 量来说不是问题,但我很困惑,因为top并且htop两者都显示仅使用了 500MiB 的 RAM,更不用说systemctl单独使用 apache2 的报告了。为什么会这样,哪个是正确的?

操作系统信息,如果需要:

OS: Kali GNU/Linux Rolling x86_64
Kernel: 4.19.0-kali3-amd64
Run Code Online (Sandbox Code Playgroud)

memory linux apache-http-server systemctl

5
推荐指数
1
解决办法
1934
查看次数

上次 Windows 10 更新后 httpd.exe 无法启动

星期一我更新了 Windows 10,然后在星期二我试图从 xampp 启动 apache,但我失败了。

xampp 告诉我看看 Windows 事件查看器写了什么,这就是 II 在 Windows-> application

Bad application name: httpd.exe, version: 2.4.39.0, timestamp: 0x5cee4f90
Failed module name: ADVAPI32.dll, version: 10.0.18362.329, timestamp: 0x0ba7a4cd
Exception Code: 0xc0000005
Error Offset: 0x000000000004bc09
Process ID: 0x1a44
Application Launch Time: 0x01d56469430e900c
Bad application path: c: \ xampp \ apache \ bin \ httpd.exe
Failed module path: C: \ WINDOWS \ System32 \ ADVAPI32.dll
Report ID: 09f56fcb-f159-4392-a9fa-b8bd77208e2a
Full name of the failed package:
Bad application related code:
Run Code Online (Sandbox Code Playgroud)

windows apache-http-server windows-10

5
推荐指数
0
解决办法
814
查看次数

如何判断哪个 Apache 正在运行

我刚刚更新到 macOS Catalina (10.15.1)。

我通过 HomeBrew 安装了自己的 Apache。这个Apache似乎不接受我的配置。我不知何故认为 Apple 重新启用了默认的 Apache,但我不知道如何判断哪一个正在运行?

apache-http-server homebrew macos

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

在 OS X Snow Leopard 上安装多个 PHP 环境

我刚刚将 MBP 升级到 Snow Leopard (OS X 10.6),这使 PHP 升级到了 5.3

这很棒,除了我使用 MBP 作为我的开发机器,并且我使用了许多目前与 PHP 5.3 不兼容的 PHP 库和框架(即 CakePHP 1.2)。尤其是 CakePHP 没有 PHP 5.3 的稳定版本,所以这不是升级框架的问题(无论如何,生产服务器都在 PHP 5.2 下。)

有没有办法将 PHP 5.2.9 与 PHP 5.3 一起安装,然后使用 httpd.conf 或 .htaccess 告诉 Apache 哪个版本的 PHP 用于特定目录?

或者有没有办法用 MacPorts 做到这一点?

谢谢!

mac apache-http-server macports php macos

4
推荐指数
1
解决办法
6222
查看次数