我已经build立了一个使用ISPConfig 3进行pipe理的LAMP服务器。 PHP运行在Fast-CGI上。 我有几个域,如my_site.com,my_site.net和my_site.org,但他们都指向相同的应用程序/网站。 每个域都有自己的Web根文件夹,并在其自己的用户下运行。 应用程序本身位于另一个用户拥有的通用目录中,如下所示: # path to my_application (owned by web1) /var/www/clients/client1/web1/web/my_application/ # sym-link to my_application from my_site.com-web-root (owned by web5) /var/www/my_site.com/web -> /var/www/clients/client1/web1/web/ # sym-link to my_application from my_site.net (owned by web4) /var/www/my_site.net/web -> /var/www/clients/client1/web1/web/ 通过这样的设置,我在执行PHP的文件系统操作时遇到了一些有关权限的问题。 例如,如果应用程序是通过my_site.com调用的,则用户web5正在尝试将某些内容写入应用程序文件夹。 但是应用程序文件夹由用户web1拥有,所以web5不允许在那里写入。 就我而言,这就是Fast-CGI的工作原理。 经过一些研究并询问了一些人,解决scheme似乎是将其全部分解到一个域(例如my_site.com),并将其他域(my_site.org,my_site.net)定义为这个域的别名。 这样,只有一个用户具有所有必要的权限。 但是,这意味着我们不得不购买多域名SSL证书 – 但是我们已经为每个域名拥有SSL证书。 我们能够使用他们与我们以前的供应商(pipe理托pipe),在那里,我们也只有一个networking目录和多个域名。 所以,如果这是可能的,我想知道:在这种情况下,把所有的域合并到一个主域名和几个别名域是否是正确的? 或者我可能误解了一些东西?
我为Apache虚拟主机设置了单独的错误日志。 当我最近检查了一些日志时,我在虚拟主机日志中发现了其他不相关的程序的条目。 例如我在/home/user1/domain1.com/logs/error_log中获得这样的条目: Oct 2 22:09:16 server1 procmail[15394]: Couldn't rename bogus "/var/mail/nobody" into "/var/mail/BOGUS.nobody.5CoE" Oct 2 22:09:16 server1 procmail[15393]: Couldn't rename bogus "/var/mail/nobody" into "/var/mail/BOGUS.nobody.5CoE" Oct 2 22:09:16 server1 postfix/local[15187]: 362D216843F: to=<[email protected]>, relay=local, delay=129, delays=0.06/113/0/16, dsn=5.2.0, status=bounced (can't create user output file. Command output: procmail: Renaming bogus mailbox "/var/mail/nobody" info "/var/mail/BOGUS.nobody.5CoE" procmail: Couldn't create "/var/mail/nobody" […]
我在/ var / www / site1和/ var / www / site2文件夹中有虚拟主机。 我想限制对apache虚拟主机文档根目录以外的文件的访问,即site1不能访问site2的文件。 现在这个脚本在/ var / www / site1下工作正常,这不好: $filename = "/var/www/site2/somefile"; $handle = fopen($filename, "r"); $contents = fread($handle, filesize($filename)); echo $contents; 请问如何解决这个问题? 非常感谢你!
这是我想要做的: 如果用户访问www.example.com/thislocation ,我想redirect到一个特定的脚本,并给它“thislocation”作为参数。 因此,如果用户导航到www.example.com/thislocation ,我想redirect到www.example.com/cgi-bin/test.pl?parameter=thislocation ,并且类似地,如果用户导航到www.example.com/thatlocation ,我想redirect到www.example.com/cgi-bin/test.pl?parameter=thatlocation 。 这可能与Apache?
只是想知道如何在我的URL的末尾使用Mod_Rewrite添加尾部的斜线? 这是我的.htaccess文件目前: RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([^/]*)$ index.php?pageName=$1 我的url显示如下: WWWW。****。com /网页 我希望它显示如下: WWWW。****。com /网页/ 该URL在内部持有GET请求,但我希望它看起来像一个真正的目录。
我从Ubuntu转移到CentOS,现在我有一个问题从PHP运行adb 。 我试图执行shell_exec("/path/to/adb devices"); 我得到: ADB server didn't ACK failed to start daemon error cannot connect to daemon daemon not running. starting it now on port 5037 当然, adb不能启动,因为它已经在运行并监听端口5037,如果我尝试以root身份运行adb devices ,或者从命令行运行常规用户,它将返回所有连接的设备。 此configuration以前与Ubuntu一起工作。 有什么不同? 有什么build议么?
将模块加载到Apache中 一旦将Apache模块安装到Apache安装的模块目录中,仍然需要configurationApache以实际加载模块。 具体如何完成以及应该放置哪个主要的Apacheconfiguration文件取决于您使用的是哪个版本的Apache,并且还可能受到您的操作系统的Apache发行版如何组织Apacheconfiguration文件的影响。 因此,您可能需要检查操作系统的任何文档以查看可能需要修改过程的方式。 在最简单的情况下,只需添加一行表单即可: 将LoadModule wsgi_module modules / mod_wsgi.so加载到主Apache的“httpd.conf”configuration文件中,同时加载其他Apache模块。 该指令的最后一个选项应该是mod_wsgi模块文件所在位置的绝对path,或者是相对于Apache安装根目录expression的path。 如果您使用“make”来安装软件包,请查看复制文件的位置,以确定将该值设置为的内容。 我在哪里添加httpd.conf文件中的LoadModule行? 我不明白这些方向: 该指令的最后一个选项应该是mod_wsgi模块文件所在位置的绝对path,或者是相对于Apache安装根目录expression的path。 如果您使用“make”来安装软件包,请查看复制文件的位置,以确定将该值设置为的内容。
我试图build立一个新的服务器与几个虚拟主机,但也如此,如果请求的fqdn不匹配虚拟主机,然后请求被redirect到http://example.com/log.php?url=fqdn 我已经得到了默认的主机redirect,但我定义的虚拟主机不起作用。 我正在使用不同的主机进行testing,并在命令行上使用curl -I http://hostname.example.com:8080/来读取html头文件,以直接检查redirect头,而不是使用浏览器跟踪(避免任何caching问题)。 我已经定义了一个虚拟主机作为服务器的fqdn,但是当我使用curl来请求该虚拟主机时,我得到了redirect。 如果我通过没有定义虚拟主机的其他名称来请求服务器,我也会被redirect。 ubuntu上的apache版本是2.2.16 configuration(从几个不同的文件按顺序连接在一起)如下所示: Listen 8080 NameVirtualHost * <VirtualHost _default_> ServerAdmin [email protected] RewriteEngine On RewriteRule ^(.*)$ http://example.com/log.php?url=%{HTTP_HOST}$1 [R=302,L] </VirtualHost> <VirtualHost *> <Directory "/var/www"> allow from all Options Indexes </Directory> DocumentRoot /var/www ServerName hostname.example.com </VirtualHost> 我也尝试了hostname.example.com:*和hostname.example.com:8080的ServerName值 如果我不够清楚: anything.anything.anything.any / something requests from my server should redirect to example.com/log.php?url=anything.anything.any/something 从我的服务器请求的foo.example.com(未定义为VirtualHost)应该redirect到example.com/log.php?url=foo.example.com hostname.example.com(定义为VirtualHost)从我的服务器请求应该返回一个HTML文档 从我的服务器请求的anothername.example.com(也定义为VirtualHost)应该返回一个html文档 […]
我怎样才能configurationmod_ssl使用不同的证书传入和传出的消息? 我已经设法configurationapache2只处理传入的消息与单个证书。 是否可以分开传入和传出stream? 我怎么能这样做?
我在一个使用Drupal Solr模块的项目中工作,而且我正面临一个问题,再加上我是Solr config上的一个完整的新手。 问题是相同的结果不按字母顺序排列。 那可能吗? 我可以configuration什么? 谢谢!