擅长:python、mysql、java
<p>通常,您不以<code>my_user_name</code>的身份运行web服务器,而是以<code>httpd</code>或{<cd3>}或{<cd4>}等特殊用户的身份运行。而且该用户可能没有权限读取您安装的Python模块,这当然会导致导入失败。在</p>
<p>若要测试此项,请尝试在导入之前打开它:</p>
<pre><code>try:
with open('/path/to/bottlenose.py', 'r') as f:
print('Opened file just fine')
except Exception as e:
print('Failed to open file: %s' % (e,))
</code></pre>
<p>当然,如果<code>print</code>在您的设置中不能有效地工作,无论您如何打印出<code>sys.path</code>,请在此处执行相同的操作。在</p>
<p>如果这不是问题所在,您可以尝试将导入包装在一个<code>try</code>块中,以打印出异常并查看它失败的原因,因此我们不必猜测。在</p>
<p>如果问题出在<em>上,那么快速和肮脏的解决方案是让您的web服务器帐户通过<code>chmod</code>访问用户的Python modules目录,但更好的解决方案是将这些模块安装到系统范围内的site packages目录中,或者安装到web服务器帐户拥有的目录中。在</p>