Articles of apache 2.2

Apache ProxyPass使用请求中的参数进行反向处理

我有一种情况,我想要将所有以/ app开头的内容redirect到内部服务器。 基本上这个想法是,Apache将作为一个反向代理进行以下转换: http://external/app -> http://myserver:1082/myapp 我可以使用Rewrite来完成,如下所示: RewriteCond %{REQUEST_URI} ^/app RewriteRule ^/app(.*)$ http://myserver:1082/myapp$1 [L,P] ProxyPassReverse /app http://myserver:1082/myapp 它工作正常。 问题是,现在我要在URL上有一个语言preffix,但在应用程序上没有。 所以我需要以下redirect: http://external/app -> http://myserver:1082/myapp http://external/en/app -> http://myserver:1082/myapp http://external/pt/app -> http://myserver:1082/myapp 虽然这可以通过重写来完成,但是我有一个proxyPassReverse的问题。 因为基本上我需要做一个dynamic的ProxyPassRever,根据用户的实际URL请求,改变位置 ProxyPassReverse /en/app http://myserver:1082/myapp ProxyPassReverse /pt/app http://myserver:1082/myapp ProxyPassReverse /app http://myserver:1082/myapp 这将是类似的东西 ProxyPassReverse ${preffix}/app http://myserver:1082/myapp 有没有可能做到这一点?

如何根据位置将访问者发送到另一台机器上托pipe的不同版本的网站

假设我目前的网站正在A机上运行,​​我打算在机器B上启动新的网站。现在,我想让这个新网站只对属于某个特定位置(基于IP)的用户生效。 这样,我们就可以在不影响现有设置的情况下testing新的站点,并在开放之前进行testing。 什么样的设置(服务器/反向代理/ IP数据库等)将被推荐? 这种方法的任何问题(除了redirect延迟和可能的search引擎优化问题)? 谢谢你的帮助。

Redmine通过Apache / Unicorn服务

我目前正试图获得一个redmine的实例并运行。 到目前为止,我已经取得了成功,但是现在我正在用apache / unicornconfiguration打开一个路障。 下面的conf包含在我的httpd.conf中。 ProxyPass /redmine balancer://redmine ProxyPassReverse /redmine balancer://redmine <Proxy balancer://redmine> BalancerMember http://127.0.0.1:4000 BalancerMember http://127.0.0.1:4001 BalancerMember http://127.0.0.1:4002 BalancerMember http://127.0.0.1:4003 Order deny,allow Allow from all </Proxy> 问题是页面生成没有任何格式或资产,并且所有链接不包括主机/ redmine前缀

谁应该拥有/ var / www?

可能重复: 我应该如何构build我的用户/组/ Web服务器的权限? 我在互联网上看到了一些这样的答案,但我正在寻找一个明确的答案。 我有一个新的Ubuntu 12.04 LTS服务器与LAMP。 Apache设置为以“www-data”运行,/ var / www设置为“root”作为所有者,“root”作为组。 / var / www的权限是“drwxr-xr-x”,我相信这可以转换为755数字。 我知道/ var / www不应该被“www-data”所拥有,因为那么buggy /恶意代码可能会有一个字段。 但是,我应该保留它作为根:root(不方便),或者我应该改变它为Ubuntu:Ubuntu,默认的用户,Ubuntu预configuration为您login? 如果权限保持在755? 我一直在pipe理系统一段时间没有很大的安全问题,但我试图真正认真对待安全性,仔细检查一切,确保我的知识没有差距。

无法安装xdebug

使用时,我得到了大量未定义的引用 $ld xdebug.so 我已经将“zend_extension =”/ bla / xdebug.so“”添加到apache的conf,它给我一个configurationtesting失败,因为它无法find该文件。 该文件已被chown'd www数据,所以我不相信这是一个权限错误。 我已经在xdebug.org/wizard.php上运行了这个向导,以确保版本是正确的,我更新到它推荐使用源码安装的版本,并且仍然从apache和$ ld获得同样的错误。 我最初安装了xdebug: $apt-get install php5-xdebug 并且也尝试过: $pecl install xdebug

我如何使用JBoss 5实现高可用性服务?

我试图用JBoss和Apache来实现高可用性服务。 架构是: Apache | | | | JBoss1 JBoss2 从Apache到JBoss都有一个平衡器,工作正常。 有时这个请求是由JBoss1来完成的,有时由JBoss2来完成,但是如果一些Jboss发生故障,平衡器仍然向它发送请求,所以应用程序有时会工作,有时候不会。 我怎样才能实现一个服务,检测到如果一些JBossclosures,它会自动redirect到另一个节点的stream量? 我试着听,但我解决不了。

Nginx共享指令

现在从apache移动到nginx,并将.htaccess重写为nginx。 我有这样的“问题”: 我有大约十个站点,利用相同的核心。 所以我有一堆重写规则应该去其中的每一个。 此外,网站的数量将增加,以及一些共同的规则。 在Apache中,当所有的网站被放置的时候,我已经把所有常用的指令写入了global / www文件夹。 但现在,在nginx我无法确定如何组织configuration文件。 每个网站我都有大约10个通用规则和30个网站规则。 所以不知道如何不写10个常用规则到每个configuration,同时为每个站点提供他自己的规则。 提前致谢。

用apache做两个重写,并用webdav重写模块

我试图设置一个WebDAV服务器,它使用用户名redirect到一个私人的DAV目录。 在每个私人目录中还有一个名为SharedFolder的文件夹。 这个想法是,当用户login时,他将首先被redirect到他的私人目录。 使用重写模块,URL中将不会显示任何path,只会显示阻止用户进入另一个私人目录的主机名。 当用户打开名为SharedFolder的固定文件夹时,mod_rewrite将在匹配的RewriteCond文件夹名称上激发并redirect到RewriteMap中指定的相应共享文件夹。 我的虚拟主机configuration: LoadModule dbd_module modules/mod_dbd.so LoadModule authn_dbd_module modules/mod_authn_dbd.so DBDriver mysql DBDParams "host=db.example.com user=username pass=password dbname=webdav" <VirtualHost *:80> Servername webdav.example.com DocumentRoot /var/www Options +FollowSymlinks RewriteLog "/var/log/httpd/rewrite.log" RewriteLogLevel 5 RewriteEngine on RewriteRule ^(.*) /webdav/%{LA-U:REMOTE_USER}$1 RewriteMap usergroup txt:/etc/httpd/usersingroups RewriteCond %{REQUEST_URI} ^/SharedFolder/ [NC] RewriteRule ^(.*)$ /sharedfolders/${usergroup:%{LA-U:REMOTE_USER}} [L] <Directory "/var/www"> DAV on Options +Indexes AuthName "example.com" […]

Linux(Ubuntu):在内部networking上设置主机名

我有一个带有WiFi卡的Ubuntu Linux服务器。 当我启动我的电脑Apache Web服务器启动和/ etc / hosts文件列出了以下内容: $ cat /etc/hosts 127.0.0.1 localhost 127.0.1.1 avalanche 允许使用http:// localhost /或http:// avalanche从同一主机访问我的服务器。 但是,当我运行ifconfig我得到以下输出: wlan0 Link encap:Ethernet HWaddr cc:af:78:bf:28:45 inet addr:192.168.3.31 Bcast:192.168.3.255 Mask:255.255.255.0 inet6 addr: fe80::ceaf:78ff:febf:2845/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:565796 errors:0 dropped:0 overruns:0 frame:0 TX packets:360709 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:620453848 (620.4 […]

ProFTPD服务器 – 多个端口,相同的IP地址

我在使用ProFTPD服务器时遇到问题,因为当多个端口处于活动状态(IP地址相同)时,我无法将其设置为正常工作。 在我的proftpd.conf文件中,我添加了这个部分: <VirtualHost 0.0.0.0> Port 2122 Umask 022 ServerName "Example" DefaultRoot /home/usr1/www/example1 UserAlias fuser usr1 # Valid LOGINs <Limit LOGIN> AllowUser usr1 DenyALL </Limit> </VirtualHost> 所以,当我试图build立连接到端口21,一切都好,我得到目录列表。 但是,当我尝试build立连接到端口2122,它连接,但我得到一个错误500非法端口命令在最后。 在Linux中打开防火墙端口21和2122。 这是执行netstat -lpn |时所得到的结果 grep ftp tcp6 0 0 :::2122 :::* LISTEN 30597/proftpd: (acc tcp6 0 0 :::21 :::* LISTEN 30597/proftpd: (acc 现在,我不确定,这个虚拟服务器的问题在哪里,为什么我不能在最后得到目录列表。 重点是,我需要两个FTP,因为有些用户应该连接到第一个,其中一些到第二个。 每个FTP都有自己的主目录。 如果需要,我可以提供完整的proftpd.conf文件。