需要从 PHP 执行以下行:
$res = shell_exec('sudo sh /home/nicklas/cronjobs/make_account.sh 用户名密码');
问题是执行时什么也没有发生。如果我尝试 echo $res ,它会出现空白。我也试过使用 system() ,结果相同。我猜它不起作用,因为我需要以 root 访问权限运行脚本,而 www-data 用户默认情况下没有。我将以下行添加到 /etc/sudoers 以希望获得访问权限:
www-data ALL=(ALL:ALL) NOPASSWD:/home/nicklas/cronjobs/make_account.sh
但没有成功。我试过在两者之间重新启动 apache,没有任何改变。
我错过了什么吗?
我的笔记本上有本地ikiwiki(使用 apache 作为本地网络服务器)。当我在启动和登录后第一次保存编辑时,保存很慢(但第二次保存以正常速度)。知道如何解决这个问题吗?
编辑:
第一次点击编辑:~ 30 Sek。(上面写着“waiting for localhost”)
点击 save the first time:~1 min 30 Sek(上面写着“waiting for localhost”)
第二次点击编辑:<3 Sek。
第二次点击保存:~4 Sek。
问题与是否在线无关。
我使用 git 作为后端。
我想与 apache 网络服务器实现相互身份验证(双向)。
参考:
1.无法使用 CA 根密钥签署 CSR
2.添加 CA 签署的客户端证书时 Firefox 错误消息
经过许多步骤:
我现在可以使用 https 访问服务器,但对于所有用户。
我只希望获得 CA 签名证书的授权用户能够访问我服务器上的网页。我需要/etc/httpd/conf.d/ssl.conf
按照本教程编辑 ssl.conf
,我对 ssl.conf 做了这个:
SSLVerifyClient require
SSLVerifyDepth 2
Run Code Online (Sandbox Code Playgroud)
更新#1:
当然,我已将证书设置为由 CA 签名的证书:
# Server Certificate:
#SSLCertificateFile /etc/pki/tls/certs/localhost.crt
SSLCertificateFile /var/www/sslConf/server.crt
# Server Private …Run Code Online (Sandbox Code Playgroud) 我在我的计算机上设置了一个 Apache 2 服务器,用于本地测试。需要明确的是,它不是在互联网上托管网站。它仅用于本地调试和设计。
我使用的是 Ubuntu Linux,但现在我有一台使用 Linux Mint 的新计算机。我想要做的是获取我在旧 Ubuntu 机器上拥有的所有 Apache 站点和设置,并在新的 Linux Mint 机器上复制它们。
我只知道如何手动执行此操作,一次一个站点,从头开始。为目录中的每个站点创建一个文件sites-available并使用a2ensite. 然后对任何配置文件进行编辑,例如在我的php.ini文件中添加一些行以启用 Xdebug,并希望我没有遗漏任何内容。
我确信我这样做的效率很低,而且很容易出现人为错误。
是否不可能以某种方式在我的 Ubuntu 机器上复制整个 Apache 2 设置和站点,然后一次性将它们放在我的 Linux Mint 机器上?或者至少,以最少的步骤重新创建每个站点并从头开始设置?
请注意,我更像是一名设计师而不是管理员,所以请假设我对 Linux 命令和服务器设置的了解很少。
我刚刚在新的 Linux Mint 安装上设置了一个 Apache 2.2 服务器。我正在重新创建以前在旧 Ubuntu 机器上的设置。
在我以前的计算机上,我必须启用FollowSymLinksin httpd.conf,因为我将我的网站 HTML 文件存储在我的主目录中,并从/var/www.
在我的新服务器上,我找不到任何httpd.conf地方,所以我似乎无法设置跟随符号链接的选项。结果,我收到了一个403 Forbidden: You don't have permission to access / on this server错误。
另外,在我的错误日志中,它说:
[Sun May 05 02:12:17 2013] [error] [client 127.0.0.1] Symbolic link not allowed or link target not accessible: /var/www/Websites
Run Code Online (Sandbox Code Playgroud)
允许符号链接的方式有什么改变吗?还是我的设置有误httpd.conf?无论如何,如何让我的新 Apache 遵循符号链接?
更新:根据下面的答案,我检查了文件/etc/apache2/sites-enabled/000-default和/etc/apache2/sites-available/default,它们都有FollowSymLinks选项。我可能会收到上述错误,还有其他原因吗?
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks …Run Code Online (Sandbox Code Playgroud) 我正在使用其他人设置的服务器。服务器是运行 Apache/2.0.59 (httpd) 的 CentOS 4.6。他们在端口 8443 上设置了更新服务。我知道它正在工作,但我需要找出当有人访问该端口时 Apache 正在提供哪些文件。
我查看了 httpd.conf 文件,看看里面是否有任何东西,但什么也没有。我也尝试使用,nmap但只显示了当前打开的端口。的输出nmap是:
8443/tcp open https-alt
Run Code Online (Sandbox Code Playgroud)
那么,当有人连接到该端口时,我如何才能找出所提供的文件呢?
我在使用 apache 时遇到了一些奇怪的行为。我有刚好挂起两分钟的请求。请求可能一次是一个文件,然后是另一次完全不同的文件。
这是我的网络检查器的几个屏幕截图。
原文地址:http : //tiny-img.com/image.php?di=QNKO
原文地址:http : //tiny-img.com/image.php?di=3BFS
原文地址:http : //tiny-img.com/image.php?di=49VN
我不知道如何解决这个问题,日志中没有错误,而且我在网上找不到任何涉及类似问题的内容。
关于我如何解决这个问题的任何想法,和/或如果您知道发生了什么,我将不胜感激,我可以做些什么来纠正这个问题。
我对使用 Arch Linux 还比较陌生,我认为我一定错过了正确执行此操作的明显方法,但是 - 没有自己启动守护程序 - 我无法弄清楚如何在启动时解锁受密码保护的 SSL 密钥服务正常。使用不受保护的密钥或没有 SSL 配置,Apache 会使用 systemd 服务正常启动。一旦我尝试使用受保护的密钥,我就会得到如下信息:
$ sudo systemctl start httpd
Job for httpd.service failed.
$ sudo systemctl status httpd
httpd.service - Apache Web Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled)
Active: failed (Result: exit-code) since Mon 2014-02-10 11:47:07 UTC; 13ms ago
Process: 26035 ExecStop=/usr/bin/apachectl graceful-stop (code=exited, status=0/SUCCESS)
Process: 26042 ExecStart=/usr/bin/apachectl start (code=exited, status=1/FAILURE)
Main PID: 25500 (code=exited, status=0/SUCCESS)
systemd[1]: Starting Apache Web Server...
apachectl[26042]: Apache/2.2.26 mod_ssl/2.2.26 (Pass Phrase Dialog)
apachectl[26042]: Some of …Run Code Online (Sandbox Code Playgroud) 每天我都会看到 Apache 日志中充满了由不同漏洞扫描器应用程序发起的请求。来自通常相同 IP 地址的数百个请求不仅使日志变脏,而且还使用了一些服务器资源。
由于我的 Apache 上没有任何 PHP 或 CGI-BIN 脚本,因此我想使用 fail2ban 在第一次请求时禁止所有这些 IP 地址一段时间。
有没有人有这种现成的fail2ban配置?
我正在考虑重新启动客户端的 Apache 服务器,但我不愿意这样做,因为我知道他当前正在运行 HTTPS,而且我不想被服务器提示我输入 SSL 密码(我不知道)有,但他不确定是否有)。
有没有一种快速/简单的方法来检查 Apache在重新启动之前是否需要 SSL 密码?
apache-httpd ×10
arch-linux ×1
centos ×1
certificates ×1
cloning ×1
dns ×1
fail2ban ×1
ikiwiki ×1
linux ×1
networking ×1
openssl ×1
php ×1
scripting ×1
shell ×1
ssl ×1
startup ×1
sudo ×1
systemd ×1
tcp ×1