SOLUTION : Percebi que esse erro estava sendo gerado porque minha instalação do Python estava no meu diretório home
. Assim, o Apache não tem permissão para acessar o ambiente.
Para resolver isso, fiz o seguinte:
Removida minha instalação do anaconda3:
[ec2-user@ip] ~ $ rm -rf anaconda3/
# -- be sure to remove directories .conda/ and .anaconda_backup/ -- #
# -- these should be in the same directory as the anaconda3/ directory -- #
Reinstalado o anaconda3 como root no diretório /usr/local
(acessível por todos os usuários, funciona com o Apache):
[ec2-user@ip] ~ $ sudo su -
[root@ip] ~ $ cd /usr/local
[root@ip] ~ $ wget https://repo.continuum.io/archive/Anaconda3-5.1.0-Linux-x86_64.sh
# ^ whichever version you want. Go to https://repo.continuum.io/archive/
[root@ip] ~ $ bash Anaconda3-5.1.0-Linux-x86_64.sh
# specify your path when prompted --> /usr/local/anaconda3
# note that directory /usr/local/anaconda3 cannot exist prior to running the command
Adicione a linha export PATH='/usr/local/anaconda3/bin:$PATH'
ao final do seu arquivo /root/.bashrc COMO O USUÁRIO ROOT! (edite o caminho antigo do anaconda3 se ele já existir no final deste arquivo)
[root@ip] ~ $ vi /root/.bashrc # -- add/edit the line here -- #
[root@ip] ~ $ source /root/.bashrc
Verifique se o usuário root está usando a versão correta do Python:
[root@ip] ~ $ which python
/usr/local/anaconda3/bin/python
Sair como usuário root:
[root@ip] ~ $ exit
Verifique se a versão correta do Python funciona como usuário padrão:
[ec2-user@ip] ~ $ which python
/usr/local/anaconda3/bin/python
Se isso imprimir /usr/bin/python
ou algo diferente de /usr/local/anaconda3/bin/python
, certifique-se de adicionar o PATH especificado acima ao arquivo ~ / .bashrc do seu usuário (assim como você fez como usuário root)
NOTA: todas as novas instalações / configurações de ambiente devem agora ser feitas como ROOT. Ou seja:
[ec2-user@ip] ~ $ sudo su -
[root@ip] ~ $ conda install flask
...
[root@ip] ~ $ exit
# -- open Python to verify that your installation worked -- #
[ec2-user@ip] ~ $ python
Python 3.6.4 |Anaconda, Inc.| (default, Jan 16 2018, 18:10:19)
[GCC 7.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import flask
# -- shouldn't throw an ImportError -- #
>>> exit()
Se alguém se deparar com isso no futuro, COMENTÁRIO! Eu adoraria poder oferecer ajuda.
Boa sorte!