Articles of httpd.conf

两个Web应用程序的Apacheconfiguration

我有两个Web应用程序在同一台服务器上运行。 每个端口号都需要不同的端口号,但只有一个端口向公众开放。 我的公司宁愿避免打开另一个端口,但仍然希望这两个应用程序公开,所以我想弄清楚如何都运行。 我对apache有一点了解,但是我很困惑如何设置它来做到这一点。 我应该使用反向代理还是有另一种方法来实现我的目标?

mod_php使用的私有的RSS会被其他进程使用吗?

我有PHP进程运行,有时不得不短暂使用大量的RAM。 在PHP使用大量的RAM后,httpd进程似乎无限期地保持相同的私有脏RSS。 即使处理稍后更less的内存密集型请求。 这是pmap的相关行。 % tinysu pmap -x 30247 30247: /usr/sbin/httpd Address Kbytes RSS Dirty Mode Mapping 00002b914046f000 60712 57324 57124 rw— [ anon ] 00002b9144cfa000 12676 12448 12448 rw— [ anon ] 00002b9145a3b000 27400 26964 26964 rw— [ anon ] 这个记忆是否可用于系统的其他部分? 我将httpd.conf中的MaxRequestPerChild保留为10000,用于像持久性memcached连接之类的事情。 我是否需要降低该值以确保内存被释放,这样偶尔的内存密集型操作并不会最终导致每个httpd进程占用比所需更多的内存? 我尝试在httpd.conf中使用MaxMemFree,但没有任何区别。

Trac 0.12.2在Centos 5.6上找不到正确的apacheconfiguration

在过去的几天里,我一直在试图让Apache在CentOS 5.6上为Trac服务。 缺less的链接几乎可以肯定是Apache的configuration。 我知道这一点,因为我可以通过tracd -s –port 8080 /path/to/trac/project在本地运行tracd -s –port 8080 /path/to/trac/project 。 我有mod_python和mod_wsgi安装。 Trac的所有依赖关系都已到位。 Trac是使用easy_install安装的。 我已经使用trac-admin /path/to/trac/project initenv成功创build了trac环境。 我知道mod_wsgi比mod_python更mod_python因为它仍然被开发并且具有性能上的优势,但是我尝试过的最新configuration使用了mod_python 。 这是因为我可以find的所有完整的指南使用mod_python和性能不是问题。 而且,任何人都不可能试图修补这个服务器(因为我是一个学生,不会再来这里)。 我最近的尝试(从/etc/httpd/conf/httpd.conf) <virtualHost *:80> ServerName **IP of Server** <location /> SetHandler mod_python PythonHandler trac.web.modpython_frontend PythonOption TracEnv /path/to/trac/project PythonOption TracUriRoot / </location> </virtualHost> 任何帮助find神奇的configuration,使阿帕奇为我工作是我真的很感激的东西。 如果使用mod_wsgi而不是mod_python话,效果会更好。 编辑:我发布后,我发现了BitNami Trac分布 。 它在自己的目录中安装了所有需要的软件,并完成了所有的configuration工作。

Apache HTTP Server + Tomcat:哪个文件生成mod_jk.conf,如何修改生成的东西,以及httpd如何到达它?

我在安装Apache HTTP Server和Tomcat Add-On时使用了XAMPP。 有一个默认的mod_jk.conf是由Tomcat在启动时生成的。 但是哪个文件生成这个mod_jk.conf文件? 我如何修改默认值? 默认情况下,它看起来像这样: pastebin – mod_jk.conf 。 Apache HTTP Server如何到达这个文件? 查看httpd.conf时,我看不到任何对此文件的引用。 当我把一个VirtualHost放在我的httpd.conf文件中,并且把JkMount /* ajp13放入它时,Apache HTTP服务器服务无法启动(在事件查看器中导致7024事件ID错误(错误代码为1,如果我注释掉了JkMount /* ajp13这一行,它就不会启动了。 但是,如果我把以下的行,这是在mod_jk.conf相同的,再次提到的VirtualHost之前,服务可以开始! <IfModule !mod_jk.c> LoadModule jk_module "C:/xampp/tomcat/xampp/apache/modules/mod_jk.so" </IfModule> 为什么我必须再次把这条线? 为什么会发生这样的事情, http://localhost/example确实起作用,所以这个查询被redirect到AJP13,但是我必须将LoadModule行再次放入另一个文件中? 编辑:我不知道为什么,我肯定会修改的东西,但现在/例如也不工作…而上面的configuration给出了500内部服务器错误。

Apache2 ScriptAlias似乎被忽略

我在我的Apache2服务器上configuration了两个虚拟主机。 一个包含API,另一个包含我的应用程序的移动版本。 由于移动版本需要从自己的域访问API,我决定为此创build一个ScriptAlias条目。 不幸的是,它不起作用,所以我感谢任何意见,我做错了什么。 <VirtualHost *:80> DocumentRoot /path/to/mobile/version/htdocsdir <Directory /> Options FollowSymLinks AllowOverride All </Directory> ScriptAlias /api /path/to/api/htdocsdir <Directory /path/to/api/htdocsdir > Order allow,deny Allow from all Options FollowSymLinks AllowOverride All </Directory> </VirtualHost>

如果通过IIS中的某个域访问,则redirect到端口3000

我在端口80上运行IIS和在端口3000上运行Apache。我如何让IIS将具有特定域名的请求redirect到3000上的Apache? 例如,对“x.com”的请求最终将导致用户到1.2.3.4:80,而对“y.com”的请求将把他们带到1.2.3.4:3000。 它的所有安装在Windows Server 2008 R2上。

虚拟主机强制下载文件

现在我已经挣扎了5个多小时了,我似乎无法find解决问题的方法。 基本上,我在Fedora Core服务器上(在自定义端口55555上)设置了虚拟主机。 任何时候我尝试通过input浏览器访问php文件例如111.111.111.111:55555/somefile.php浏览器强制此文件下载。 我想要parsingphp文件。 以下是我的httpd.conf附加部分: Listen 55555 <VirtualHost *:55555> DocumentRoot "/var/www/vhosts/example.com/httpdocs/app/" ServerName 111.111.111.111:55555 CustomLog "/var/log/app/access.log" combined ErrorLog "/var/log/app/error.log" <Directory "/var/www/vhosts/example.com/httpdocs/app/"> Options Indexes MultiViews FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost> 任何人都知道为什么PHP文件被迫下载和如何parsing它们? 那么,关键是,当我build立在plesk下的PHP文件parsing没有任何问题。 在httpd.conf中,只有3行提到phpconfiguration: DirectoryIndex at_domains_index.html index.html index.html.var index.shtml index.cfm index.php index.htm index AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps 在php.conf文件的conf.d文件夹中,我有以下内容: # # […]

httpd运行为_www而不是www,因为它用于

OSX Mountain Lion和Apache 2.2.22。 我一直把httpd.conf设置为: 用户www组www 它正在运行。 直到今天。 重新启动服务器的另一个原因,当我试图通过FTP在今天晚上的FTP网站的一些变化,它说,访问被拒绝。 必须看看进程和httpd现在运行为_www。 WTH? 现在当然,我所有的用户都会得到拒绝的消息,因为他们都是由www用户创build和允许的,而不是_www。 任何想法,为什么发生这种事情,或者我可能做了什么事情呢?

Apache日志为301

我如何根据响应头为301redirect创build日志文件? 我知道我可以使用SetEnvIf与CutsomLog ,但似乎SetEnvIf只有请求访问,没有响应。

具有代理和位置的Apacheconfiguration

我想将这些域映射到这些端口。 我该怎么做? http://test1.example.com/phpmyadmin/ example.com:80/phpmyadmin/ http://test1.example.com/app1/ example.com:8080/app1/ http://test1.example.com/app2/ example.com:8090/app2/ http://webmin.example.com/ example.com:10000/ 这就是我所做的。 问题是phpmyadmin不工作,它被转发到玻璃鱼。 webmin正在工作,因为它是一个单独的域名。 如何将phpmyadmin映射到相同的域? http://test1.example.com/phpmyadmin/ 谢谢 <VirtualHost *:80> ServerName test1.example.com ProxyRequests Off ProxyPreserveHost On <Proxy *> Order deny,allow Allow from all </Proxy> ProxyPass / http://localhost:8080/ ProxyPassReverse / http://localhost:8080/ ProxyPass /admin/ https://localhost:4848/ ProxyPassReverse /admin/ https://localhost:4848/ </VirtualHost> <VirtualHost *:80> ServerName test1.example.com/phpmyadmin/ DocumentRoot /usr/share/phpmyadmin Alias /phpmyadmin /usr/share/phpmyadmin Alias […]