Articles of apache 2.2

使用虚拟主机将请求从IISredirect到apache,而无需更改URL

我有一堆IIS后面的Apache服务器,每个服务器有一个站点运行,子域从IISredirect到Apache是​​正常工作与URL重写+ ARR,如下所示: —– a.company.com >> |IIS| >> apache_server_a (10.0.0.1) —– —– b.company.com >> |IIS| >> apache_server_b (10.0.0.2) —– —– c.company.com >> |IIS| >> apache_server_b (10.0.0.3) —– 但我的一个apaches有5个客户站点,他使用虚拟主机。 我怎样才能redirectIIS收到这五个网站的请求到Apache而不更改URL? client1.com —– client2.com >> |IIS| >> apache_with_virtual_hosts (10.0.0.4) client3.com —– client4.com client5.com OBS:。 IIS不会停留在与Apache服务器相同的机器上

使端口显示为子域

我有Jira设置为服务于我的服务器myserver:8080 。 有一个DNS指向jira.otherserver到myserver的IP地址的引用。 (其他otherserver将在未来主持Jira设置) 根据这里的其他答案,我尝试启用mod_proxy,并将以下内容添加到myserver httpd.conf中: <VirtualHost *:80> ServerName jira.otherserver/ ProxyPreserveHost On # setup the proxy <Proxy *> Order allow,deny Allow from all </Proxy> ProxyPass http://jira.otherserver/ http://localhost:8080/ ProxyPassReverse http://jira.otherserver/ http://localhost:8080/ </VirtualHost> 但是,当我访问http://jira.otherserver它给了我通用的开始页面(phpinfo)。 我仍然可以通过http://myserver:8080访问jira 我究竟做错了什么? 编辑:我也可以在jira.otherserver:8080访问Jira jira.otherserver:8080 ,所以DNS工作正常 编辑2:我按照答案中的build议,并修改了部分 NameVirtualHost *:80 <VirtualHost *:80> ServerName jira.software-task ProxyPreserveHost On # setup the proxy <Proxy *> Order allow,deny Allow […]

Apacheredirect到SSL终止代理之后

我在<VirtualHost *:80>有以下redirect: RewriteRule ^/old-url$ /new-url [R=301,L] RewriteRule ^/foo$ /bar [R=301,L] … 在apache之前,我有haproxy,在80和443上进行监听,后者进行SSL终止,并且: http-request set-header X-Forwarded-Port %[dst_port] http-request set-header X-Forwarded-Proto https if { ssl_fc } 我对redirect的问题是: http://example.com/foo正确地redirect到http://example.com/bar https://example.com/foo错误地redirect到http://example.com/bar 我怎样才能确保httpredirect到http和https到https ? 请注意,我想避免不得不重写两次redirect规则。 我如何使用X-Forwarded-Proto或X-Forwarded-Portredirect到正确的scheme?

强制Apache2 Web服务器侦听单个外部IP

我试图强制Apache2 Web服务器侦听属于HAProxy( 192.168.50.30 )的单个外部IP,因此用户必须通过HAProxy来使用Apache2 Web服务器。 目前(不幸的是)用户可以通过http://192.168.50.10和http://192.168.50.30访问Apache2 web服务器(只有这样才能被允许)。 HAProxy IP: 192.168.50.30 Apache2 IP: 192.168.50.10 最常见的post说,更改Listen *:80在/etc/apache2/ports.conf中Listen IP-ADDRESS:80会诀窍,但是当我尝试重新启动apache2时出现错误。 (99)Cannot assign requested address: AH00072: make_sock: could not bind to address 192.168.50.30:80 no listening sockets available, shutting down 我目前的设置 /etc/apache2/ports.conf Listen 192.168.50.30:80 <IfModule ssl_module> Listen 443 </IfModule> <IfModule mod_gnutls.c> Listen 443 </IfModule> /etc/apache2/sites-available/000-default.conf <VirtualHost *:80> DocumentRoot /var/www/html </VirtualHost> /etc/apache2/apache2.conf中 […]

Centos 6.8失败重启专用服务器

好的,所以我买了一个从nocix安装了Centos 6.8的专用服务器,还附带了2个硬盘驱动器sda – 128GB SSD和sdb – 2TB HDD驱动器,我想我把第二个驱动器分区为/ dev / sdb,然后重新启动但失去了通过SSH连接的能力,所以我联系了nocix,他们说我不得不重新加载SystemRescueCd。 所以我这样做,一直在阅读/遵循这里列出的步骤: https : //www.system-rescue-cd.org/Sysresccd-Partitioning-EN-Repairing-a-damaged-Grub 看到我运行grub-install /dev/sda时得到的错误消息 df:警告:无法读取挂载的文件系统表:没有这样的文件或目录df:警告:无法读取挂载的文件系统表:没有这样的文件或目录找不到/ boot的设备:找不到或不是块设备。 看到我的分区下面。 我有2个驱动器sda和sdb。 [=====DEVICE=====] [==FILESYS==] [======LABEL======] [====SIZE====] [MAJ] [MIN] [loop0 ] [squashfs ] [<unknown> ] [ 275.14 MB] [ 7] [ 0] [sda1 ] [ext2 ] [<unknown> ] [ 250.00 MB] [ 8] [ 1] [sda2 ] […]

htaccess不工作在Apache 2.4虚拟主机

这是我的apache 2.4虚拟主机configuration <VirtualHost *:80> DocumentRoot /var/www/fd-pro/app-api/public_html ServerName subdomain.domain.com.au ServerAlias subdomain.domain.com.au <Directory /var/www/fd-pro/app-api/public_html> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/subdomain-error.log LogLevel warn CustomLog ${APACHE_LOG_DIR}/subdomain-access.log combined </VirtualHost> 我也启用了重写模块。 在/ var / www / fd-pro / app-api / public_html中有一个htaccess 话 Header set Access-Control-Allow-Origin "*" Header set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT" Header set […]

需要mod_proxy_fcgi有用的错误信息

当一个不存在的PHP脚本被请求时,mod_proxy_fcgi提供了一个相当无用的错误信息,基本上只是说 [proxy_fcgi:error] …. AH01071: Got error 'Primary script unknown\n' 这台服务器使用Apache 2.4.6(Centos 7),php处理configuration为: <FilesMatch \.php$> SetHandler "proxy:fcgi://127.0.0.1:9000" </FilesMatch> 我真的很想知道实际的脚本名称,因为它可能包含有用的信息(例如,指示有缺陷的链接,页面名称中的错误,或仅仅表明它只是另一个愚蠢的寻找服务器与不受保护的WP – login.PHP)。 我试图从信息更改LogLevel进行debugging,但是然后错误日志也充满了有效的PHP脚本访问细节,这使得错误日志相当混乱,因为这些都不是实际的错误。 有没有办法获得更有用的proxy_fcgi错误消息,其中包括不存在的PHP脚本的实际脚本名称?

为多个客户使用单个VPS

我经营一个小型网站开发和devise业务,并提供托pipe给我的客户。 到目前为止,我一直在购买非常实惠的VPS,并将其用于我的客户。 由于我的许多客户有小型的WordPress网站或没有数据库的静态网站,我可以把5-10个客户放在一个VPS上。 问题是我不提供cPanel或任何其他pipe理小组,因为这太昂贵了。 我为每个客户创build一个SSH账户,只访问他们的文件夹。 所有的VPS都运行Ubuntu和Apache或者nginx。 我使用Apache或nginx虚拟主机将每个域指向相应的文件夹。 这个过程是有点费时,因为每次我有一个新的客户端,我不得不手动创build一个新的SSH用户,并授予他访问特定的文件夹。 这种方法不好或不推荐? 有没有更好的办法来处理这个问题? 有没有更好的方式与多个客户共享一个VPS? 提前致谢!

我怎么能在同一个Apache 2.2服务器上有两个virutalhosts

我有一个Apache 2.2服务器和一个现有的虚拟主机(foo.com)代理内部服务器。 我已经添加了另一个虚拟主机(bar.com),我想代理到不同的内部服务器。 我的vhost.conf文件看起来像这样(减去一些注释和匿名): # START <VirtualHost *:80> ProxyPreserveHost On ProxyPass / http://foointernal:80/ ProxyPassReverse / http://foointernal:80/ DocumentRoot "E:/Apache/htdocs/foo/" ServerName foo.com ServerAlias foo.com ServerAdmin [email protected] ErrorLog "E:/Apache/logs/foo_error.log" TransferLog "E:/Apache/logs/foo_ccess.log" </VirtualHost> <VirtualHost *:80> ProxyPreserveHost On ProxyPass / http://barinternal:80/ ProxyPassReverse / http://barinternal:80/ DocumentRoot "E:/Apache/htdocs/bar/" ServerName bar.com ServerAlias bar.com ServerAdmin [email protected] ErrorLog "E:/Apache/logs/bar_error.log" TransferLog "E:/Apache/logs/bar_access.log" </VirtualHost> # END 当我在浏览器中打开http://foo.com时,一切正常。 […]

Debian:不能ifdown eth0

我在我的debian 7 / apache 2.2上遇到了一个问题 我不能ifdown我的接口eth0(服务器超时,我需要重新启动它) 当我做strace我看到一个SIGCHILD: strace -e open ifdown eth0 open("/etc/ld.so.cache", O_RDONLY) = 3 open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY) = 3 open("/etc/network/interfaces", O_RDONLY) = 3 open("/run/network/ifstate", O_RDWR|O_CREAT|O_APPEND, 0666) = 3 open("/run/network/ifstate", O_RDWR|O_CREAT|O_APPEND, 0666) = 3 open("/run/network/.ifstate.tmp", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4 open("/run/network/ifdown-eth0.pid", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 3 open("/run/network/ifup-eth0.pid", O_RDONLY) = -1 ENOENT (No such file or directory) — […]