Articles of apache 2.2

获取apache2加载新的PHP5

这台服务器运行Ubuntu 9.04,apache 2,并从版本库运行PHP 5.2.6-3ubuntu4.4。 我安装了另一个新版本的PHP(5.3.1,从源代码编译),然后我用/ usr / bin / php5replace了这个版本的链接。 现在cli加载新版本 name:/$php -v PHP 5.3.1 (cli) (built: Dec 9 2009 21:44:18 ) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies 但是,Apache仍然加载旧版本。 我应该怎么做才能让Apache加载新版本?

子网站不工作没有www在它前面

我有一个在cpanel之前的子域设置(sub.domain.comredirect到domain.com/sub/),突然间我今天突然发现它是在浏览器中重写URL到www.domain.com/sub/,而不是只是把它留在sub.domain.com。 我不知道是什么问题,但决定删除我的子域,并在cPanel重新创build它。 现在我只能访问www.sub.domain.com(sub.domain.com产生一个服务器没有find错误)。 编辑:问题似乎与.htaccess文件。 删除后,事情恢复正常。 但是现在我的新问题是如何正确configuration.htaccess文件。 我最初调整了它,试图完成以下内容: 我有三个文件夹,live,staging和dev: 1)domain.com或www.domain.com的请求被定向到domain.com/live(并且用户看到的URL总是被重写为www.domain.com)。 2)请求staging.domain.com和dev.domain.com或分别定向到domain.com/staging和domain.com/dev,并且用户在浏览器中看到staging.domain.com或dev.domain.com 。 3)当我将其添加到cPanel中时,任何子域通常都不会被浏览器重写。 我当前的.htaccess文件完成数字1很好,但重写staging.domain.com到www.domain.com/staging等等。 RewriteCond %{HTTP_HOST} !^www\.domain\.com$ RewriteRule ^(.*)$ http://www.domain.com/$1 [R=301,L] RewriteRule ^$ /index.html RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_URI} !\..+$ RewriteCond %{REQUEST_URI} !(.*)/$ RewriteRule ^(.*)$ http://www.domain.com/$1/ [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} !^/live/ RewriteRule ^(.*)$ /live/$1

Subversion提供了错误500,直到通过Web浏览器进行validation

我们曾经在Windows服务器上使用Collabnet SVN / Apache组合,使用LDAP身份validation,虽然性能不是很好,但它用来完美地工作。 切换到新的Ubuntu 10安装,并设置Apache / SVN / LDAPconfiguration后,我们可以通过LDAP使用Active Directory身份validation来访问我们的存储库。 我们现在有一个非常奇怪的问题。 每当有新用户访问版本库,我们的SVN客户端(我们有一些取决于工具,但为了争辩,让我们坚持龟SVN)报告“错误500 – 未知的响应”。 为了解决这个问题,我们必须使用Web浏览器login到回购站点,然后“向后”导航,直到它正常工作 例如: SVN签出https://svn.example.local/SVN/MyRepo/MyModule/ – 错误500( 坏 ) Webbrowse到https://svn.example.local/SVN/MyRepo/MyModule/ – 错误500( 错误 ) 浏览到https://svn.example.local/SVN/MyRepo/ – 错误500( 错误 ) 浏览到https://svn.example.local/SVN/ – 禁止403( 正确 ) 浏览到https://svn.example.local/SVN/MyRepo/ – 确定200( 正确 ) SVN签出https://svn.example.local/SVN/MyRepo/MyModule/ – 错误500( 坏 ) 浏览到https://svn.example.local/SVN/MyRepo/MyModule/ – 确定200( 正确 ) SVN签出https://svn.example.local/SVN/MyRepo/MyModule/ – OK […]

SetEnvIf设置Content-Disposition HTTP头的正则expression式

我正在尝试使用IHS 7.0 / apache 2.2 SetEnvIf伪指令来设置基于url参数的下载文件的文件名。 我想我是非常接近,但是如果有一个空间(编码或其他)在文件名 – 它失败。 示例url: http://site.com/path/to/filename.ext/file-title=Nice File Name.ext?file-type=foo apacheconfiguration: SetEnvIf Request_URI "^.*file-title\=(.*)\??.*$" FILENAME=$1 Header unset "Content-Disposition" Header add "Content-Disposition" "attachment; filename=%{FILENAME}e" UnsetEnv FILENAME 一个应用程序将指定在这个例子中现在显示为“Nice File Title.ext”的内容。 如果没有空格,这一切都很好,但是如果有空格,下载的文件名就会显示为“Nice”。 在查询string(?文件types等)中可能有也可能没有第二组参数,

mod_headers不适用于php + mod_fastcgi页面

我通过mod_fastcgi&mod_suexec运行PHP,并且在我的.htaccess文件中添加了Header set X-UA-Compatible "IE=edge env=best-standards-support" 。 它对静态内容工作正常,但PHP文件缺less标题。 我该如何解决这个问题?

SVN服务器上的`svn checkout`会导致repo中断301错误

我们有一个nginx服务器代理Apache + SVN的标准设置。 nginx的设置是一个非常简单的代理: server { server_name svn.ourdomain.tld; location / { proxy_pass http://localhost:8080; } } Apache的设置如下: <Location /> DAV svn SVNParentPath /var/svn AuthType Basic AuthName "Authentication Required" AuthUserFile /var/svn/.auth Require valid-user </Location> …它允许我们使用像http://svn.ourdomain.tld/repo这样的东西来访问存储库。 我们现在已经运行了这个设置了大约2年没有问题。 最近我们发现,我们需要将其中一个存储库检出到服务器本身上,但是每当我们这样做的时候,似乎就会打破回购。 从那一刻起,它只会回应一个301 Moved Permanently错误。 我们已经尝试过: svn co file:///path/to/repo svn co svn://localhost/repo svn co svn://svn.ourdomain.tld/repo svn co svn+ssh://localhost/repo svn co svn+ssh://svn.ourdomain.tld/repo svn […]

Nginx用一个外部程序重写

在Apache的mod_rewrite模块中有一个叫做RewriteMap的特性。 这允许调用外部程序来处理redirect(允许更复杂的redirect)。 Nginx是否有相同的function? 我已经看了HttpMap和重写模块,但无法find一种方法来做到这一点。 任何指针都会很棒。

在Mono上使用ASP.Net最好的服务器是什么?

我正在重新configuration我的网站从头开始,基本上我希望它运行单声道(嗯,在Mono内的ASP.Net) 根据Mono项目 ,似乎有两个选项,Apache或Nginx。 哪一个最适合我? 我在Arch Linux x86-64上运行,所以我有两个包。 而且我不打算(至less在不远的将来)运行任何其他软件,如PHP。 唯一必须支持的是多主机支持,例如foo.com转到网站A,bar.com转到网站B.

客户端证书

我的公司从供应商处购买了通配符证书。 此证书已成功configuration为使用Apache 2.2来保护子域。 SSL端的一切工作。 现在我需要为这个子域生成x509客户端证书。 我沿着这个页面:( http://www.vanemery.com/Linux/Apache/apache-SSL.html ),从“创build用于身份validation的客户端证书”开始。 我已经生成了p12文件并成功导入到Firefox。 当我现在浏览到这个网站时,在FireFox中出现一个错误,提示“在加载页面的时候,服务器的连接被重置了。 我认为我的问题来自没有正确签署客户端。 当我签署客户端证书时,我正在使用RapidSSL(我们从中购买证书)的PEM文件(RapidSSL_CA_bundle.pem)作为-CA参数。 对于-CAkey参数,我正在使用服务器的私钥。 它是否正确?

mod_mono安装在Apache的Ubuntu 10.10

我已经按照提到的说明安装了mod_mono和apache 在 http://blog.ruski.co.za/page/Install-Mono-on-Ubuntu.aspx 当我运行我也得到提到最后的错误消息。 但是当我打 HTTP://localhost/test/index.aspx 我得到以下错误 “/”应用程序中的服务器错误无法find资源。 说明:HTTP 404.您正在查找的资源(或其某个依赖项)可能已被删除,名称已更改或暂时不可用。 请检查以下URL并确保拼写正确。 资源URL:/ test /版本信息:Mono版本:2.0.50727.1433; ASP.NET版本:2.0.50727.1433 问题是什么 ? 我到目前为止还是那么近!