2009-07-31 64 views
5

Gần đây, tôi đặt dự án của tôi là php + smarty + mysql trong máy chủ httpd của tôi. Nhưng tôi gặp phải một lỗi mà nói:500 Lỗi máy chủ nội bộ?

500 Internal Server Error 

OS của tôi là archlinux, và máy chủ httpd và php đã được cài đặt như thế này:

sudo pacman -S apache php 

Nếu tôi sử dụng một thử nghiệm tập tin php bản địa, trong đó có những điều sau đây :

<html> 
    <head> 
    <title>PHP Test Page</title> 
    </head> 
    <body> 
    This is Arch Linux, running PHP. 
    <?php 
     phpinfo(); 
    ?> 
    </body> 
    </html> 

nó chạy chính xác. Nó nói với tôi rằng php có thể hoạt động tốt. Nhưng tại sao dự án của tôi lại thông minh không hoạt động? Có ai gặp phải vấn đề này không?

+0

Bạn tạo ra một cấu trúc thư mục? – adatapost

+2

Nếu đây là vấn đề vật lý trắc nghiệm, tôi sẽ chọn "Không đủ chi tiết". –

+0

ý của bạn là gì về "tạo cấu trúc thư mục" –

Trả lời

2

Tìm trong nhật ký lỗi Apache của bạn (thường được tìm thấy tại /var/log/httpd/error_log, mặc dù điều này thay đổi rất nhiều). Nó sẽ có thêm thông tin về lỗi máy chủ.

+0

tập tin lỗi error_log không conaint bất kỳ thông báo lỗi về lỗi. –

+0

Điều đó rất bất thường. Tôi khuyên bạn nên đảm bảo bạn đang xem đúng tệp; máy chủ ảo có thể có nhật ký lỗi của riêng chúng và như vậy. – chaos

6

Với thông tin bạn cung cấp thật khó nói.

Lỗi 500 xảy ra vì bạn đã thực hiện một số lỗi trong mã được cho là tạo trang hoặc mã tạo ra một số ngoại lệ chưa được xử lý. Đề xuất của tôi là truy cập trang cung cấp cho bạn lỗi 500, sau đó thử nhận xét tất cả mã của bạn. Xem vấn đề vẫn còn hiện diện hay không. Nếu không, hãy bỏ ghi chú mã cho đến khi bạn tìm thấy phần quan trọng gây ra lỗi. Có thể là bất cứ điều gì, một lỗi đánh máy, một tập tin không tìm thấy, một lỗi logic, bất cứ điều gì.

Ngoài ra, hãy kiểm tra nhật ký máy chủ web, nếu bạn có thể đọc chúng.

+0

Trang này là tệp tpl của smarty và không hiển thị gì cả. Thông báo lỗi "500 Lỗi máy chủ nội bộ" được bắt bằng công cụ Firebug. –

+2

firebug bắt bất kỳ máy chủ nào của bạn tạo ra. 500 được trả về bởi máy chủ của bạn. Kiểm tra xem bạn có lỗi trong tệp mẫu hay quy trình thay thế php/smarty không. –

1

Kiểm tra để đảm bảo rằng mọi tệp .htaccess đều chính xác (cú pháp khôn ngoan).

1

chỉ xảy ra với tôi và muốn viết ra giải pháp.

Thư mục bộ nhớ cache Smarty được định cấu hình (/ var/cache/Smarty) được định cấu hình với quyền không chính xác, quy trình apache cần tạo tệp trong thư mục đó.

Đây là thư mục bạn đã đặt với chỉ thị compile_dir.

BTW, tệp error_log không hiển thị bất kỳ điều gì với lỗi này, Firebug hiển thị 500 lỗi máy chủ nội bộ.

0

tôi đã có thể để có được những chi tiết lỗi bằng cách kiểm tra tập tin error.log bên

/var/log/apache2

trong ubuntu 16.04

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