Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
XAMPP-PHP未在virtualhost上解析_Php_Parsing_Xampp_Virtualhost - Fatal编程技术网

XAMPP-PHP未在virtualhost上解析

XAMPP-PHP未在virtualhost上解析,php,parsing,xampp,virtualhost,Php,Parsing,Xampp,Virtualhost,我已经为本地计算机设置了一个虚拟主机 这是我的/etc/hosts文件中的内容: 127.0.0.1 localhost local.dev 127.0.1.1 tomica-ubuntu # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6

我已经为本地计算机设置了一个虚拟主机

这是我的
/etc/hosts
文件中的内容:

127.0.0.1   localhost local.dev
127.0.1.1   tomica-ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
这是my
/opt/lampp/etc/extra/httpd vhosts.conf中该虚拟主机的配置:

<VirtualHost *:80>
    DocumentRoot "/opt/lampp/htdocs/dev"
    ServerName local.dev
</VirtualHost>
但是当我打开
http://local.dev
在我的浏览器中,我只看到:

HTML
但是,如果打开文档源,我可以看到:

<html>
<body>
    <p>HTML</p>
    <?php echo 'PHP' ?>
</body>
</html>

HTML

如果我检查页面的DOM,会发现:

<html>
<body>
    <p>HTML</p>
    <!--<?php echo 'PHP' ?>-->
</body>
</html>

HTML

另外,如果我将
/opt/lampp/htdocs/dev/index.html
重命名为
/opt/lampp/htdocs/dev/index.php
,一切似乎都正常


为什么我的PHP代码没有在.html文档中解析?

默认情况下
mod\u PHP
不会告诉Apache让它使用
.html
扩展来处理文档。如果使用以下命令更改处理程序类型:

然后Apache就会知道您想让PHP处理带有
html
扩展名的文件内容


默认情况下不启用此功能的原因是,通过PHP解释器运行文档需要花费(CPU、内存使用和最终用户时间)。浪费时间是没有意义的——因此在mod_php的默认设置中,HTML文件(通常是静态事务)不会通过php解释器传递。

默认情况下
mod_php
不会告诉Apache让它处理扩展名为
.HTML
的文档。如果使用以下命令更改处理程序类型:

然后Apache就会知道您想让PHP处理带有
html
扩展名的文件内容


默认情况下不启用此功能的原因是,通过PHP解释器运行文档需要花费(CPU、内存使用和最终用户时间)。浪费时间是没有意义的——因此在mod_php的默认设置中,HTML文件(通常是静态事务)不会通过php解释器传递。

Wow,这太快了。谢谢你,肖恩。虽然我不得不修改一下。因此,在
/opt/lampp/htdocs/dev
中,我创建了一个
.htaccess
文件,并将其放入:
AddHandler php5 script.html
@这也会起作用-我想它可以添加到
.conf
文件的
VirtualHost
部分-但是.htaccess也会起作用:-)我明白了,只是我觉得我在服务器设置方面还是太新了,我正试图在每个项目的基础上尽可能多地做:)非常感谢你的帮助。哇,太快了。谢谢你,肖恩。虽然我不得不修改一下。因此,在
/opt/lampp/htdocs/dev
中,我创建了一个
.htaccess
文件,并将其放入:
AddHandler php5 script.html
@这也会起作用-我想它可以添加到
.conf
文件的
VirtualHost
部分-但是.htaccess也会起作用:-)我明白了,只是我觉得我在服务器设置方面还是太新了,我正试图在每个项目的基础上尽可能多地做:)非常感谢您的帮助。
<html>
<body>
    <p>HTML</p>
    <!--<?php echo 'PHP' ?>-->
</body>
</html>
AddHandler php-script .html