2012-05-23 36 views
7

Trên Xubuntubox mới của tôi, tôi đã cài đặt các công cụ lamp-server, php, php-apc, đã thêm dòng extension=apc.so vào php.ini và khởi động lại hệ thống. Apache và PHP dường như hoạt động tốt, nhưng APC thì không.PHP: Đã bật APC nhưng vẫn không hoạt động?

Vì vậy, tôi đã kiểm tra những gì các tập tin apc.php sẽ nói:

No cache info available. APC does not appear to be running. 

Nhưng trong thông tin php nó dường như được kích hoạt. Có một cái nhìn gì php -i | grep 'apc' nói:

Additional .ini files parsed => /etc/php5/cli/conf.d/apc.ini, 
apc 
apc.cache_by_default => On => On 
apc.canonicalize => On => On 
apc.coredump_unmap => Off => Off 
apc.enable_cli => Off => Off 
apc.enabled => On => On    <- it is enabled 
apc.file_md5 => Off => Off 
apc.file_update_protection => 2 => 2 
apc.filters => no value => no value 
apc.gc_ttl => 3600 => 3600 
apc.include_once_override => Off => Off 
apc.lazy_classes => Off => Off 
apc.lazy_functions => Off => Off 
apc.max_file_size => 1M => 1M 
apc.mmap_file_mask => no value => no value 
apc.num_files_hint => 1000 => 1000 
apc.preload_path => no value => no value 
apc.report_autofilter => Off => Off 
apc.rfc1867 => Off => Off 
apc.rfc1867_freq => 0 => 0 
apc.rfc1867_name => APC_UPLOAD_PROGRESS => APC_UPLOAD_PROGRESS 
apc.rfc1867_prefix => upload_ => upload_ 
apc.rfc1867_ttl => 3600 => 3600 
apc.serializer => default => default 
apc.shm_segments => 1 => 1 
apc.shm_size => 32M => 32M 
apc.slam_defense => On => On 
apc.stat => On => On 
apc.stat_ctime => Off => Off 
apc.ttl => 0 => 0 
apc.use_request_time => On => On 
apc.user_entries_hint => 4096 => 4096 
apc.user_ttl => 0 => 0 
apc.write_lock => On => On 

Đúng như dự đoán php -m | grep 'apc' cũng tìm thấy apc.

Bạn có biết những gì bị thiếu, rằng tôi không thể sử dụng chính xác không?

+2

Đảm bảo bạn đã cung cấp đủ RAM cho APC, 32M rất thấp (chỉ đủ cho một trang Wordpress). Kiểm tra câu trả lời của tôi ở đó để biết cách cấu hình APC http://stackoverflow.com/questions/3723316/warning-require-once-function-require-once-unable-to-allocate-memory-for-p – bokan

Trả lời

9

hai cách để chạy PHP.

Bạn đang hiển thị cấu hình CLI cho PHP và apc.php không sử dụng nó.

Thật vậy, nếu bạn kiểm tra phpinfo() thông qua trình duyệt của mình, bạn có thể thấy rằng không có tiện ích mở rộng APC nào được tải.

Giải pháp: mở tại /etc/php5/cgi/conf.d/apc.ini (cgi không cli) và dán cấu hình của bạn ở đó, một lần nữa. Khởi động lại máy chủ web (sudo service httpd restart) và ngắt kết nối!

Hy vọng điều này sẽ hữu ích!

+0

ah, được rồi. Tôi nghĩ rằng tự động tạo ra '/ etc/php5/apache2/conf.d/apc.ini' sẽ là đủ. Với thư mục '.../cgi/...', nó hoạt động với apache, bây giờ. Điều buồn cười là cli vẫn không hoạt động. – erikbwork

+7

okay, cho cli Tôi chỉ cần thêm một dòng khác vào '/ etc/php5/cli/conf.d/apc.ini' có nội dung' apc.enable_cli = 1' – erikbwork

+0

Máy chủ của tôi cũng cho biết APC được bật nhưng tìm/- tên apc.ini không cho thấy rằng tôi có một tập tin apc.ini bất cứ nơi nào. – KevinOrin

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