如何基于域有条件地向Apache.htaccess添加一行?

如何基于域有条件地向Apache.htaccess添加一行?,apache,.htaccess,Apache,.htaccess,我的本地开发PC默认设置为使用PHP5,我的客户端主机(1and1.co.uk)默认设置为使用PHP4 要在1和1帐户上启用PHP5,必须将以下行添加到.htaccess文件中: AddType x-mapp-php5 .php 如果我将这一行添加到本地.htaccess文件中,它将破坏我的PHP 如何根据域(或其他参数?)有条件地添加这一行,使其仅由live站点而不是我的开发站点执行 我希望能够上传(FTP)我的整个源代码树,而不用担心每次都要记得在服务器上编辑.htaccess e、 g

我的本地开发PC默认设置为使用PHP5,我的客户端主机(1and1.co.uk)默认设置为使用PHP4

要在1和1帐户上启用PHP5,必须将以下行添加到.htaccess文件中:

AddType x-mapp-php5 .php
如果我将这一行添加到本地.htaccess文件中,它将破坏我的PHP

如何根据域(或其他参数?)有条件地添加这一行,使其仅由live站点而不是我的开发站点执行

我希望能够上传(FTP)我的整个源代码树,而不用担心每次都要记得在服务器上编辑.htaccess

e、 g


AddType x-mapp-php5.php
... htaccess的其余部分
这可能吗

我没有访问服务器配置文件的权限,只有.htaccess


提前谢谢。

试试这个。我不知道它是否有效。文档中使用的术语表明应该这样做,但由于从来没有人做过你想做的事情,这有点悬而未决

<Location http://www.example.com/>
    AddType x-mapp-php5 .php
</Location>

AddType x-mapp-php5.php

我知道可以使用VirtualHost标记在httpd.conf中执行特定于服务器的命令。()

虽然我不能100%确定您是否可以在.htaccess文件中使用它,但我建议您尝试以下操作:

<VirtualHost www.example.com>
    AddType x-mapp-php5 .php
</VirtualHost>

AddType x-mapp-php5.php

您可以使用VirtualHost指令来完成此操作。当我想让django和mod_python只在子域上运行时,我也这么做了

<VirtualHost *:80>
DocumentRoot /www/docs/path
ServerName www.example.com
....

AddType x-mapp-php5 .php
</VirtualHost>

DocumentRoot/www/docs/path
服务器名www.example.com
....
AddType x-mapp-php5.php

其他人看到这一点,并使用带有virtualhost指令的本地服务器:花了我一段时间,在线找到的方法都不起作用(可能是因为我的MAMP apache版本还不是2.4或其他版本),但这一个确实起作用了

忘记在.htaccess文件中添加“条件”行:您可以定义要在virtualhost设置中使用的.htaccess文件

因此,只需创建一个文件.htaccess\u dev,并将这一行添加到本地/dev计算机上的virtualhost定义中:

AccessFileName .htaccess_dev
所以它变成了这样:

<virtualhost>
ServerName www.example.local
DirectoryRoot /var/www/www.example.local
AccessFileName .htaccess_dev
</virtualhost>

服务器名www.example.local
DirectoryRoot/var/www/www.example.local
AccessFileName.htaccess\u dev

再填写一些细节,以便您更好地了解我的目标。您可以。见下面的文章。我是个无赖,所以不知道如何合并这两篇文章。
<virtualhost>
ServerName www.example.local
DirectoryRoot /var/www/www.example.local
AccessFileName .htaccess_dev
</virtualhost>