django aws deploy 시 포트를 개발시 8000번을 쓴다 그래서 

pip3 manage.py runserver 0.0.0.0:8000 이렇게 하면

http://ec2-52-79-104-150.apxxx-northeast-2.compute.amazonaws.com:8000



이렇게 브라우저에서 접속이 가능한데

80포트로 접속하려고 

pip3 manage.py runserver 0.0.0.0:80

이렇게 하면 

Error: You don't have permission to access that port.

이런 에러가 난다
앞에 sudo를 붙여주면 안난다

sudo pip3 manage.py runserver 0.0.0.0:80



pillow cannot install

can't install pillow

system check error


일단 발생한 에러는 runserver 를 하면 멈추고 실행이 안되었다


SystemCheckError: System check identified some issues:


ERRORS:

videos.Category.image: (fields.E210) Cannot use ImageField because Pillow is not installed.

        HINT: Get Pillow at https://pypi.python.org/pypi/Pillow or run command "pip install Pillow".


필로우를 설치하라는 건데 

로컬에서는 잘되던것이 aws 에 올리니 안되는것이 

이미지필드를 쓰기위해선 pillow 가 필요한데

    image=models.ImageField(upload_to='images/', null=True, blank=True)

aws 에서 설치가 안되는 현상이 발생했다


pip3 install Pillow 해도 계속 에러나면서 설치가 안되길래, 아래와 같은 에러가 발생

Command /usr/bin/python3 -c "import setuptools, tokenize;__file__='/tmp/pip_build_root/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-23lnbl7n-record/install-record.txt --single-version-externally-managed --compile failed with error code 1 in /tmp/pip_build_root/Pillow

Storing debug log for failure in /home/ubuntu/.pip/pip.log



그래서 확인해 보니 디펜던시관련하여 또 설치해줘야 하는게 있는거 같다

$ sudo apt-get build-dep python-imaging
$ sudo apt-get install libjpeg8 libjpeg62-dev libfreetype6 libfreetype6-dev

두 명령어를 통해 의존 라이브러리들을 설치해주고 나서

pip3 install Pillow 하면 그제서야 설치가 된다

django 에러 : CSRF verification failed. Request aborted.

장고에서 결제관련 처리하다가 csrf 에러가 났다


보통 템플릿 폼에서 post 전송할때는 폼에서 

<form action="" method="post">{% csrf_token %}

이런식으로 csrf_token 을 전달하면 되는데


뷰단에서 처리할때는 어떻게 해야할지를 찾아보니

views.py 에서 처리할때는

from django.views.decorators.csrf import csrf_exempt

임포트 해주고

@csrf_exempt
def upgrade_reply(request):

함수전에 @csrf_exempt 데코레이션을 해주면 된다

+ Recent posts