2016-07-27 19 views
8

tôi đã cấu hình Django làm việc sau:Apache2 và bối cảnh con đường cho máy chủ ảo với Django và AngularJS

WSGIScriptAlias//MyDjangoProjectFolder/MyDjangoProject/wsgi.py 
WSGIPythonPath /MyDjangoProjectFolder 

<Directory /MyDjangoProjectFolder/MyDjangoProject> 
    <Files wsgi.py> 
     Order deny,allow 
     Require all granted 
    </Files> 
</Directory> 

Alias /base_context_path/static/ /MyDjangoProjectFolder/static/ 

<Directory /MyDjangoProjectFolder/static> 
    Require all granted 
</Directory> 

Django phản ứng trên <ip>/base_context_path/rest (đối với API còn lại gọi bởi các frontend) và <ip>/base_context_path/admin (đối với chính quyền, trong đó sử dụng base_context_path/static). Vì vậy, mọi thứ cần thiết bởi Django là trên <ip>/base_context_path/*.

Bây giờ tôi cần triển khai một trang web được phát triển trong Angular trên cùng Apache2 này, vì vậy tôi đang cố gắng hiểu cách làm cho nó hoạt động. Tôi có một tên miền cho trang web này (mydomainname.org), nhưng không phải là một tên miền dành riêng cho ứng dụng django. Khi truy cập vào tên miền của tôi, tôi mong đợi trang web của tôi xuất hiện.

Đây là nỗ lực của tôi cho trang web của tôi:

<VirtualHost *:80> 
    ServerName mydomainname.org 
    DocumentRoot /MyWebSiteFolder 
    DirectoryIndex index.html 
<Directory "/MyWebSiteFolder"> 
# redirect rules for managing AngularJS 
    </Directory> 
</VirtualHost> 

Nó không làm việc (403).

Đối với ứng dụng Django của tôi, đây là máy chủ ảo Tôi tạo ra, mà không làm việc cũng như (403):

<VirtualHost *:80> 
ServerName mydomainname 
Alias /base_context_path/static/ /MyDjangoProjectFolder/static 

WSGIScriptAlias//MyDjangoProjectFolder/MyDjangoProject/wsgi.py 

WSGIDaemonProcess MyDjangoProject python-path=/MyDjangoProjectFolder:/usr/local/lib/python2.7/site-packages 
WSGIProcessGroup MyDjangoProject 


<Directory /MyDjangoProjectFolder/static> 
     Options -Indexes 
    Require all granted 
</Directory> 

Vì vậy, tôi là loại mắc kẹt.

+0

Đó có phải là lỗi đánh máy cho tên máy chủ của bạn trong cấu hình virtualhost django không? Tôi cho rằng đó là tên miền hoàn toàn đủ điều kiện của bạn ... (Và tôi cho rằng bạn cũng đã đóng thẻ virtualhost). –

Trả lời

0

Đối với mục bạn cần phải thêm các chỉ thị sau:

Require all granted 

hoặc một số tương đương cho việc truy cập vào thư mục. Apache có thể không có quyền truy cập để xem thư mục đó hoặc được cấu hình để có quyền truy cập vào nó. Bạn cũng cần đảm bảo rằng Apache có quyền đọc, ghi và thực hiện.

Đồng thời kiểm tra apache nhật ký để biết thêm thông tin về lỗi (403) đang diễn ra.

Tôi cũng khuyên bạn nên, như Aki003, sử dụng nginx vì dễ cấu hình và sử dụng với uwsgi hơn.

Các vấn đề liên quan