【发布时间】:2017-02-21 18:41:40
【问题描述】:
我有一个文件,目前在我的生产站点上运行,名为 mysite.com/pages/lister.py。
我正在尝试构建站点的本地版本。 index.php 可以工作,其他页面也可以工作,但是当我转到 .py 页面时:localhost/pages/lister.py 它不会更改站点,它只是询问我是否要使用 gedit 打开文件。
我的猜测是我的本地配置在某处关闭,但在处理此问题时我不知道从哪里开始。
注意事项:
我正在运行我使用 sudo apt-get install lamp-server^ 下载的 Lamp 服务器
我的 apache 配置是 /etc/apache2/sites-available/000-default.conf 并包含:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
<Directory /var/www/>
Options ExecCGI Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
AddHandler cgi-script .py
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
编辑 1
这可能是我的问题的解决方案,但它还没有真正起作用,所以还没有。
我跑了
sudo a2enmod cgi
sudo service apache2 restart
现在它给出了:
内部服务器错误
服务器遇到内部错误或配置错误,无法完成您的请求。
请通过 webmaster@localhost 联系服务器管理员,告知他们此错误发生的时间,以及您在此错误之前执行的操作。
服务器错误日志中可能会提供有关此错误的更多信息。 Apache/2.4.18 (Ubuntu) 服务器在 localhost 端口 80
【问题讨论】:
-
我是全栈开发的新手,但参与这些讨论对我很有帮助!我将首先问一些显而易见的事情: .py 文件是否放置在您的 Web 服务器可以看到的目录中? .py 文件是否真的写了一些 HTML?您的服务器配置设置是否可以处理 .py 文件?
-
文件在正确的位置并且确实写了html,我在上面添加了我的配置。 @PatJones
-
嗯,内部服务器错误是一个好兆头......这意味着它正在尝试加载页面。在我的配置设置中,我没有“选项”下的“多视图”……不知道那是做什么的。我也有
AllowOverride All和Require all granted,但不确定它们是否适合您的情况。