我租了一台Unix (Ubuntu)虚拟服务器。
它最近被攻破了,所以我的网络服务提供商(WebFusion)删除了我所有的网站并重新安装了服务器。这是我的任务,重建它所包含的所有网站。
他们用11.5替换了旧的Plesk9.4,现在我发现.htaccess文件被忽略了,所以我必须找到另一种方法来引导服务器通过.htm推送PHP文件。
我的测试是用两个名为phpt.php和phpt.htm的文件完成的。两者都包含简单的
<?php echo "hello" ?>.php文件起作用,但.htm不起作用。
在面板中有一个地方似乎是为此而设计的。在“网站和域名”中,如果我点击"Web服务器设置“,我可以看到两个我可以添加”附加指令“的区域。
评论说我应该使用脚本语法,如果我研究一下,我可以说"AddHandler cgi- httpd.include .cgi“之类的话。所以我添加了"AddHandler php-script .htm“和"AddHandler php5-script .htm",保存并重启了服务器。
这不管用。研究表明,这是因为nginx现在包含在Apache中,它们以一种打破这一点的方式进行交互。太棒了。
所以我删除了这些指令,并进一步研究了它,找到了这篇文章http://kb.sp.parallels.com/en/115773,它说我应该在域根下创建一个"conf“目录,并在其中放置一个名为"vhost.conf”的文件,该文件应该包含(对于像我这样的CGI应用程序实现):
<Files ~ (\.html)>
SetHandler None
AddHandler php-script .html
Options +ExecCGI
allow from all
</Files>我对此进行了更改,在这两个位置用.htm替换了.html (删除了l)。然后我重新启动了服务器,但它仍然不能工作。
因此,在这一点上,我感到困惑,如果任何人都能提供帮助,我将不胜感激。
谢谢,克里斯
发布于 2015-03-05 01:34:05
转到您的域上的"Web服务器设置“。
尝试从“通过nginx直接提供静态文件”中删除html和htm文件,或禁用此设置。

发布于 2015-03-04 20:34:25
我在我的根.htaccess中使用了plesk12.0.18( Apache和nginx也是如此):
AddHandler php-script .htm这在Plesk 11上是可以的(但在9...)
发布于 2015-03-05 18:14:02
好吧,这太令人沮丧了。我读到的所有关于nginx没有向Apache传递指令的东西显然都不是真的。Parallels的文章也是不必要的。迈克尔-没有像你提到的那样的选择。
Plesk为“附加指令”提供的字段确实有效,但我的语法是错误的。我在"Handlers“字段的”自定义值“中添加了以下内容:
php-script .php .htm
它起作用了。在此之前,我有很多错误的版本--有时包括"AddHandler“,有时包括"php5”,有时还包括具有不同文件类型的多行。
但这是可行的。不需要重新启动。
感谢所有试图帮助我的人。我希望这会对其他人有所帮助。
现在来看下一个迁移的噩梦。
https://stackoverflow.com/questions/28853635
复制相似问题