我正在使用suexec来确保PHP脚本(以及其他CGI / FastCGI应用程序)作为与相关虚拟主机关联的帐户持有者运行。 这允许保护每个用户的脚本不被其他用户读/写。 但是,我发现这样做会带来不同的安全漏洞。 以前,Web服务器作为非特权用户运行,对用户文件具有只读权限(除非用户由于某种原因更改了文件权限)。 现在,Web服务器也可以写入用户的文件。 因此,虽然我阻止了不同的用户利用对方的脚本,但是我已经做到这样,如果某些应用程序存在远程代码注入漏洞,现在它不仅具有读取权限,而且还具有对所有用户脚本和网站。 我该如何处理? 我有一个想法是为系统中的每个用户帐户创build第二个用户帐户,以便每个用户都有自己的用户帐户,并且他们的所有脚本都在另一个用户帐户下运行。 但是这似乎很麻烦。
我在我的Web服务器上看到一个反复出现的问题: [Sun May 16 03:10:19 2010] [crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed [Sun May 16 04:10:05 2010] [crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed [Sun May 16 05:10:04 2010] [crit] (28)No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed […]
我从一个相当标准的Ubuntu 9.10为一个类设置了一个wordpress服务器,他们经常遇到默认的PHP.ini设置问题。 首先内存设置太低,然后file upload限制太小,等等。而更关心的是一个wordpress宽空白页,我怀疑是杀害公羊消费,但在php.ini中打开php错误没有透露任何东西! 我不太了解共享主机,但是我觉得这样的地方允许用户编辑这些东西,而不需要我介入和重启Apache。
我在Linux上运行Apache,我使用OpenSSH为某些客户提供SFTP访问权限,以便他们可以上传他们的页面,并查看他们各自的站点日志(访问和错误)。 我正在使用OpenSSH中的新function来chroot他们的SFTP访问,到目前为止这么好。 我的问题是,在error_log中,“File not found …”的每个引用都是使用OS文件系统path给出的,而不是“Web”path。 我宁愿有错误日志上的Webpath,以便不显示OSpath。 由于我已经chroot的用户,我不想透露在操作系统,他们的文件实际上位于… 有没有可能通过任何指令来改变这种行为? 我试图find它,但找不到任何东西:( 谢谢,Craconia
是否有可能使一个基于Apache的IP虚拟主机只响应一个特定的主机名? 我有一个胭脂域名指向我的服务器。 我知道我可以redirect或吐出一个401,但只是宁可服务器甚至不响应这个主机名的请求。
我想压缩我发送的JS和CSS(也许也是HTML?)文件。 我读了很多关于gzip和mod_deflate的内容,但是我不确定最好用什么? 我正在寻找最简单的事情来维护和减less我的networking应用程序的带宽。
我目前正在从一台服务器转移到另一台服务器的过程中。 而我目前正在build立我的apache2。 但是在旧的服务器上,我使用了几个子域。 现在我想在新的服务器上testing这些子域名,但似乎帽子subdomain.xx.xx.xx.xx(subdomain.ip-address)似乎不工作。 这是不可能的,或者只是我得到configuration错误? 我的configuration NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/tld.com <Directory> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/tld.com> Options -Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all # This directive allows us to have apache2's default start page # in /apache2-default/, but still have / go to the right […]
我有Windows Server 2008服务器和IIS 7.0正在端口80(主Web服务器)上运行。 另外我有端口8081(SVN)上运行的Apache 2.2。 是否有可能configurationIIS的方式,所以它会透明地转发/代理请求http://svn.example.com:80到http://svn.example.com:8081
作为我们网站注册过程的一部分,VirtualHost指令通过PHP创build并添加到configuration文件中,在创build好每个VirtualHost之后,apache会优雅地重新启动,以便新的网站开始工作。 在(www)下运行的用户PHP被授予了在/ etc / sudoer中重新启动apache的权限,然后调用了名为exec('/ usr / local / bin / sudo / usr / local / sbin / apachectl graceful')的php脚本。 这完美的作品。 然而,我们正在转移到一个新的服务器,我无法得到这个新的设置工作 我添加了以下行到/ etc / sudoers apache ALL= NOPASSWD: /usr/sbin/apachectl graceful 然后我们的PHP脚本调用: exec('/usr/bin/sudo /usr/sbin/apachectl graceful'); 如果我为Apache用户启用shell访问并且login,我可以运行“sudo / usr / sbin / apachectl graceful”,这完全正常,但是从PHP调用它不起作用。 有没有人有任何想法? 谢谢。 在我们以前的FreeBSD服务器上,我们运行的是Apache 1.3.x和PHP 4.4 我们的新服务器是CentOS 5.4 w / Apache 2.2.x和PHP […]
嘿所有,我试图移动到另一个域,但在现有的域下有许多子域。 所有的子域将是相同的,但只是与新的域映射。 [subdomain] .xyz.com => [subdomain] .abc.com DNS设置,所有的请求都去适当的盒子,我有一个虚拟主机设置来响应他们,我只需要现在redirect域。 想法?