Articles of apache 2.2

当省略尾部斜线时,Apache请求包含完整的物理path

我最初的目标是重写请求http://server.com/node/XXXXX http://server.com/node/index.cgi?XXXXX 。 node实际上是一个包含index.cgi的物理目录,位于文档根目录下。 这一点相当简单: AddHandler cgi-script .cgi Options +FollowSymLinks +ExecCGI RewriteEngine On RewriteBase /node RewriteCond %{REQUEST_FILENAME} !index.cgi RewriteRule ^(.*)$ /node/index.cgi?$1 [L,QSA] … /real/path/to/web/stuff/node下的.htaccess文件中。 请注意,这意味着请求的formshttp://server.com/node/提供一个空的查询stringindex.cgi ,这是我想要的。 所以现在是棘手的部分:我想请求http://server.com/noderedirect到http://server.com/node/ – 如上所述,redirect到index.cgi与一个空的QS。 麻烦的是,如果我没有任何规则在我的根目录, http://server.com/node //server.com/node确实似乎去http://server.com/node/ – 但我发现给index.cgi的查询string是与请求对应的完整物理path( /real/path/to/web/stuff/node )! 我试过一个规则,在我的根级 .htaccess像: RewriteCond %{REQUEST_URI} =/node RewriteRule ^(.*)$ /node/ [L] # (also tried [L,R=302]) 但是这没有效果。 我知道,Apache做了一些尾随斜线附加在引擎盖下,但我不能使用DirectorySlash Off …我不想如果我可以,因为我有一个Drupal安装驻留在根(有一个如果类似的重写规则在那里,但我不认为他们干涉)。 那么是否可以创build一个适用于根目录.htaccess的规则,或者修改/node/.htaccess来使其不重要? 即使身体移动也不是没有道理的。 […]

mod_wsgi,apache2和平均负载

我有一个服务器在mod_wsgi下的apache2上运行几个cherrypy应用程序。 我们看到一个没有提供多less请求的盒子上的平均负载平均波动。 据我所知,这个盒子没有真正的CPU负载,有足够的内存,很less的networkingstream量,没有发生磁盘I / O。 我们正在运行13个mod_wsgi守护进程,每个进程有5个线程,为5个不同的应用程序提供服务。 这些都是非常轻量级的后端服务应用程序,根本没有做太多的处理。 我已经检查了所有我能想到的作为扑翼的原因,并想知道这里的任何人是否有类似的问题的经验。 任何意见不胜感激。 以下是在每分钟10秒请求的分段框中,大约5分钟的平均负载平均值: ~ $ sar -q 5 Linux 2.6.32-305-ec2 01/27/2011 _i686_ (1 CPU) 04:18:37 AM runq-sz plist-sz ldavg-1 ldavg-5 ldavg-15 04:18:42 AM 0 257 1.52 1.90 1.89 04:18:47 AM 0 257 1.40 1.87 1.88 04:18:52 AM 0 257 1.28 1.84 1.87 04:18:57 AM 0 257 1.18 1.81 […]

.htaccess不能在所有页面上运行

当我进入主页时.htaccess文件正常工作。 然后,当我点击到另一个页面时,我在页面的顶部和底部获得了该页面的一些缺失部分: 需要授权此服务器无法validation您是否有权访问请求的文档。 要么提供了错误的凭据(例如错误的密码),要么您的浏览器不知道如何提供所需的凭据。 此外,尝试使用ErrorDocument来处理请求时遇到401授权所需的错误。 什么是交易? 另外,我告诉我的浏览器记住可能导致问题的密码…?

在向WAMP Apache 2.2xx上的httpd添加指令后,localhost将不会加载

我不是configurationhttpd的经验丰富,我正在按照教程来查看我的网站w /域名localhost下。 我的本地主机只是空白,我的Apache服务将不会重新启动。 我检查了所有的path,他们是正确的。 我正在编辑w indows / system32 / drivers / etc / host的文件和我的apache httpd文件。 这是我把我的主机文件: 127.0.0.1 www.cars_v1.0.com.localhost 在我的httpd文件的页脚中,我将这个: <VirtualHost 127.0.0.1:80> ServerName www.cars_v1.0.com.localhost DocumentRoot "C:\wamp\www\symfony\cars_v1.0\web" DirectoryIndex index.php <Directory "C:\wamp\www\symfony\cars_v1.0\web"> AllowOverride All Allow from All </Directory> Alias /sf C:\wamp\www\symfony\cars_v1.0\lib\vendor\symfony-1.4.8\data\web\sf <Directory "C:\wamp\www\symfony\cars_v1.0\lib\vendor\symfony-1.4.8\data\web\sf"> AllowOverride All Allow from All </Directory> </VirtualHost>

PHP fopen失败 – 没有权限在写入模式下打开文件

我有一个运行在Fedora 13上的Apache 2.17服务器。我希望能够在一个目录中创build一个文件。 我不能这样做。 每当我尝试用php打开一个文件来写fopen(,'w'),它告诉我,我没有权限这样做。 所以我检查了/ etc / httpd / conf /中的httpd.conf文件。 它说用户apache,组apache。 于是我将整个/ www目录的所有权(chown -R apache:apache。*)改为apache:apache。 我也运行chmod -R 777 * 除了知道这是多么的危险之外,即使我甚至允许公开写作,它实际上仍然给我同样的错误!

Ubuntu的Apache的子域指向主域

我有一个Ubuntu的服务器与Apache安装,服务器上的主域是子域app.example.com,这是正常工作。 现在,如果我设置了john.app.example.com,那么也显示app.example.com的网页,john.app.example.com的DocumentRoot是不同的,但它仍然显示app.example的网页.COM。 我该如何解决这个问题,所以john.app.example.com会显示DocumentRoot中的页面。

PHP输出问号

我正在日本的服务器上部署一个应用程序。 该应用程序是我公司销售的产品,并已成功安装在许多其他服务器上,而没有出现这种问题。 该应用程序是用PHP / CodeIgniter编写的,并且在其他服务器上成功testing了相同的包。 问题是 – 应用程序只显示一些问号(然后死于一个错误,没有find某个类,尽pipe相同的代码在其他服务器上工作)。 一些应用程序文件使用Zend Guard进行编码Zend Optimizer在两台服务器上均可用。 我所尝试/发现的: 1)两个服务器上的主要PHP版本是相同的 – 5.2.x 2)Zend Optimizer版本相同 – 3.3.9 3)问号实际上是问号 – 输出到wget文件并在hex编辑器中打开 – 文件大多包含3F,其间有一些随机的HEX符号: 0000000: 3f3f 3f3f 3f3f 3f3f 3f3f 3f01 3f3f 3f3f ???????????.???? 0000010: 3f3f 3f3f 3f3f 3f3f 3f3f 203f 3f3f 3f3f ?????????? ????? 0000020: 3f3f 3f3f 3f3f 3f3f 3f3f 3f3f 3f3f 3f3f ???????????????? […]

Apacheconfiguration高后台用户的交通CMS?

我处于一个网站将有大量的networking用户和一些后端网站pipe理员的情况。 网站pipe理员将上传图片(+其他高存储任务),这使得httpdsubprocess的内存分配增加到100-150mb。 为了停止交换,我正在将httpd.conf中的MaxClients设置为20.但是这会降低最大的同时请求。 当网站上线时这会成为问题吗? 什么是最好的configuration? 信息:Drupal 6,PHP 5,Apache 2.2(Prefork atm) 我正在考虑Worker MPM,两个apache实例或者MaxRequestsPerChild。

Apache / Mongrel / Rails提供两个SSL证书?

当涉及到Mongrel和Rails时,Apache(2.0)可以提供两个SSL证书吗? 这是情况…我有一个服务器上有两个网站:foo.com和bar.com。 两者都有自签名的SSL证书(来自GoDaddy),都有自己的IP地址。 以下是相关的Apacheconfiguration设置: <VirtualHost 192.168.100.17:443> ServerName secure.foo.com DocumentRoot /var/www/client/foo/current ProxyPass / http://127.0.0.1:3002/ ProxyPassReverse / http://127.0.0.1:3002/ ProxyPreserveHost on RequestHeader set X_FORWARDED_PROTO 'https' SSLEngine on SSLCertificateFile /etc/httpd/conf/ssl.crt/secure.foo.com.crt SSLCertificateKeyFile /etc/httpd/conf/ssl.key/secure.foo.com.key SSLCertificateChainFile /etc/httpd/conf/ssl.crt/gd_intermediate_bundle.crt SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP ErrorLog /var/www/client/foo/current/log/ssl_error_log TransferLog /var/www/client/foo/current/log/ssl_access_log LogLevel warn <Files ~ "\.(cgi|shtml|phtml|php3?)$"> SSLOptions +StdEnvVars </Files> <Directory "/var/www/cgi-bin"> SSLOptions +StdEnvVars </Directory> RewriteEngine On SetEnvIf User-Agent ".*MSIE.*" nokeepalive […]

Apache支持php4,5和6的Ubuntu服务器

我有1and1托pipe的网站,服务器默认为PHP4,如果你想PHP5或6添加“AddType x-mapp-php5(或6).php”,它会运行脚本为PHP 5或6。 关于如何设置这样一个系统没有太多的信息,我已经联系1and1支持要求与技术交谈,但我很less希望他们会给我关于这个工作的任何信息。 我有一个在我的地下室运行MySQL / Apache的Ubuntu服务器,我可以使用开发盒,但一半我的应用程序是PHP4和一半是php5目前唯一的方法来工作的东西是卸载一个,并重新安装其他获得php4 / 5使用。 有没有人有任何想法如何设置“AddType x-mapp-php5 .php”function,所以我不必一直卸载/安装PHP一遍又一遍?