我的本地开发PC默认设置为使用PHP5,我的客户端主机(1and1.co.uk)默认设置为使用PHP4。
要在1and1帐户上启用PHP5,您必须将以下行添加到.htaccess文件中:
AddType x-mapp-php5 .php
如果我将此行添加到我的本地.htaccess文件中,则会破坏我的PHP。
如何根据域(或其他一些参数?)有条件地添加此行,因此它只由实际站点而不是我的开发站点执行?
我希望能够上传(FTP)我的整个源代码树,而不必担心必须记住在服务器上编辑.htaccess。
e.g。
<IfDomain www.example.com>
AddType x-mapp-php5 .php
</IfDomain>
... rest of .htaccess
这可能吗?
我无法访问服务器配置文件,只能访问.htaccess
提前致谢。
答案 0 :(得分:1)
对于其他人来看这个,并使用带有virtualhost指令的本地服务器:花了我一段时间,并没有找到在线工作的方法(可能是因为我的MAMP apache版本还没有2.4或者其他),但这个做了
忘记在.htaccess文件中添加“条件”行:您可以定义在虚拟主机设置中使用哪个.htaccess文件!
所以只需创建一个文件.htaccess_dev,并将此行添加到本地/ dev机器上的虚拟主机定义中:
AccessFileName .htaccess_dev
所以它变成了这样:
<virtualhost>
ServerName www.example.local
DirectoryRoot /var/www/www.example.local
AccessFileName .htaccess_dev
</virtualhost>
答案 1 :(得分:0)
试试这个。我不知道它是否会奏效。文档中使用的术语表明它应该,但由于没有人做过你想要做的事情,所以它有点悬而未决。
<Location http://www.example.com/>
AddType x-mapp-php5 .php
</Location>
答案 2 :(得分:0)
我知道您可以使用VirtualHost标记在httpd.conf中执行特定于服务器的命令。 (http://httpd.apache.org/docs/1.3/vhosts/ip-based.html)
虽然我不是100%确定您可以在.htaccess文件中使用它,但我建议您尝试以下操作:
<VirtualHost www.example.com>
AddType x-mapp-php5 .php
</VirtualHost>
答案 3 :(得分:0)
您可以使用VirtualHost指令来完成此任务。当我想让django与mod_python只在子域
运行时,我也做了同样的事情<VirtualHost *:80>
DocumentRoot /www/docs/path
ServerName www.example.com
....
AddType x-mapp-php5 .php
</VirtualHost>