【发布时间】:2018-08-01 22:50:12
【问题描述】:
我正在运行一个我在 python 上设置的简单的瓶子服务器:
from bottle import route, run, static_file
@route('/')
def home():
return static_file("home.html", root='.')
@route("/<fileName>")
def respond(fileName):
return static_file("%s" % fileName, root='.')
run(host="localhost", port=8080, reloader=True)
当我运行此代码时,它运行良好,我可以将任何文件名添加到本地主机 url(http://localhost:8080),如果存在,代码将返回指定的文件。所以我可以输入“https://localhost:8080/home.html”,它会返回我的 home.html 文件,显示:欢迎来到我的主页!
<!DOCTYPE html>
<html>
<head>
<title>test page</title>
</head>
<body>
<h1>Welcome to my home page!</h1>
</body>
</html>
但是,每当我尝试嵌入 PHP 回显语句时,它总是会添加文本后面的内容,例如:
<!DOCTYPE html>
<html>
<head>
<title>PHP test page</title>
</head>
<body>
<?php
echo "<h1>Welcome!</h1>";
?>
</body>
</html>
返回:Welcome!"; ?>
当我尝试使用带有 php 扩展名的纯 PHP 文件时也会发生这种情况:
<?php
echo "<h1>Welcome!</h1>";
?>
我需要在我的服务器代码中添加什么,或者我的 PHP 安装有什么问题吗? (我知道PHP代码是对的)
【问题讨论】:
-
你期望 python 服务器会处理 php?
-
嗯,是的。我买了一本 PHP 书,在示例中它只是以与 python 代码相同的方式托管文件。不过书中的例子都是使用第三方可执行文件来托管的(我不想用,我很想用python)
-
好吧,放弃吧。 Python 服务器不会处理 php。那是 apache2 服务器的作用域。
-
使用 python 处理 php 就像制作猫叫一样。你可以花很多时间在训练上,但养狗会更快。
-
你为什么不直接运行php?
php -S 127.0.0.1:80 -t /path/to/your/php/files/
标签: php python html echo bottle