ubuntu 1604 apache2默认并未开启CGI python支持,需要进行手动配置。 首先编辑/etc/apache2/apache2.conf,增加以下配置: <Directory /var/www/html/> Options +ExecCGI PassEnv LANG AddHandler cgi-script .py AddHandler python-program .py 配置完成之后运行service apache2 restart重启服务。 测试: 在/var/www/html新建python文件 #!/usr/bin/python print “Content-type: text/html\n” print “Hello, world!” 保存之后更改文件权限,加入可执行权限。 此时,可以通过浏览器运行相应的文件。如果运行显示的是内容,而不是运行结果,原因可能是没有load cgi模块,则需要运行sudo a2enmod cgi,然后重启apache服务即可。
若想要获取url传入参数,可以使用cgi库 #!/usr/bin/python3 # -*- coding: utf-8 -*- import cgi print(“Content-Type: text/html\n”) print(“Hello, world!”) arguments = cgi.FieldStorage() for i in arguments.keys(): print(i) print(arguments[i].value) 运行结果如下: