相信很多朋友在把Django项目部署到Apache服务器的时候会遇到这样的问题:
Django项目在本地能跑,但部署了以后却跑不了,浏览器显示Internal Server Error。去网上查,这是由于端口占用情况导致的(你在pycharm里跑项目在一个已经占用了的端口也会显示这个),然后你去调试Apache 的httpd.conf,结果不管怎么调也没有用,然后你去logs/error里看,发现最后一行写着:No module named 'django,你发现,原来是没有Django。但是我安装了Django了呀。
所以,正解就是:
控制台输入:
python
import sys
print(sys.path)
查看python路径,会打印出四个,关键是看第三个。
然后再用命令行安装一遍Django(当然会提示你Django已经安装),这时候你看一下那个already satisfied的位置在哪(也就是你Django安装的路径),这时候你就会发现它和第三个是不一样的!!
So,你只需要打开Django安装的路径,把site-packages里的东西全ctrl-c ctrl-v到你的python默认路径里面,就可以了。亲测有效,干了一天终于解决了,一开始还以为是端口占用,结果按照网上博客说的,发现占用的PID的正是Apache…