Làm cách nào để kích hoạt SQLite trên Linux / Apache / PHP?


12

Để bật SQLite trên thiết lập Windows / Apache / PHP của tôi, tôi bỏ ghi chú các dòng sau trong php.ini tệp và khởi động lại Apache:

extension=php_pdo.dll
extension=php_pdo_sqlite.dll

Bây giờ tôi có một VPS với Suse Linux 10.3Apache / PHP được đặt tự động. Nhìn qua tệp php.ini để thực hiện các thay đổi ở trên, tôi thấy rằng mọi thứ hơi khác một chút trên Linux:

  • không có danh sách các phần mở rộng cho uncomment
  • Tôi đã tìm thấy "extension_dir = /usr/lib/php5/extensions " nhưng trong thư mục này chỉ tìm thấy:
    • pdo.so
    • pdo_mysql.so

Làm cách nào tôi có thể kích hoạt SQLite trong môi trường Linux này?


Dưới đây là một hướng dẫn tuyệt vời về cách kích hoạt sqlite trong môi trường linkyx : exteon.ro/en/articles/php . Hy vọng nó giúp!
Dinu

Câu trả lời:


14

tôi không thể biết chính xác làm thế nào cho suse này sẽ làm việc. trong thế giới debian đó là:

apt-get install php5-sqlite

điều này sẽ cài đặt thư viện cần thiết và thêm /etc/php5/conf.d/sqlite.ini với

extension=sqlite.so

vì vậy trước tiên - sử dụng yum để xem gói cài đặt cần thiết, sau đó thêm vào dòng php.ini ở trên.

EDIT: đối với php7, lệnh là:

apt-get install php7.0-sqlite

và tệp php.ini được đặt tại: sudo nano /etc/php/7.0/apache2/php.ininơi bạn phải kích hoạtextension=sqlite.so


apt-get dường như là một thứ gây tranh cãi , có cách giải quyết ( susewiki.org/index.php?title=Install-apt4suse ) nhưng tôi đang tìm giải pháp đơn giản nhất ở đây, phải có cách nào đó để tải xuống và tham khảo thư viện sqlite ở Suse.
Edward Tanguay

yum là cách đơn giản
freiheit

ok vì vậy tôi đã chuyển đổi VPS của mình từ Suse sang Debian Linux 4.0 Standard 32-Bit. Tôi gõ "apt-get install php5-sqlite" và nó nói "đọc danh sách đóng gói, xây dựng cây phụ thuộc ... không thể tìm thấy gói php5-sqlite". Trong /etc/php5/conf.d có 8 tệp .ini khác nhưng không phải là sqlite.ini. Tại sao nó không thể tìm thấy gói tôi cần để chạy nó từ một thư mục cụ thể? (Tôi gõ "yum" và nó nói "-bash: yum: không tìm thấy lệnh".)
Edward Tanguay

Debian sử dụng apt-get, Suse cung cấp yum (và có thể là zypper). Nếu apt-get không thể tìm thấy gói, hãy kiểm tra xem nó có tồn tại không và kiểm tra kho lưu trữ nào bạn có /etc/apt/sources.list/etc/apt/sources.list.d.
jldugger

trong /etc/apt/source.list.d Tôi có một tệp có tên là "debian.list" nhưng không có tệp nào khác, tôi chỉ có thể tải xuống thư viện từ đâu đó và tham chiếu nó trong php.ini như trên Windows, hoặc nó cần phải Tải về và cài đặt bằng cách nào đó?
Edward Tanguay

5

Phiên bản ngắn, nhưng có thể sai vì tôi không biết gói nào mà hệ thống của bạn được thiết lập:

yum install php5-sqlite

Phiên bản dài:

yum search php sqlite

Hoặc chỉ tìm kiếm một:

yum search sqlite

Nhìn vào danh sách mà trở lại. Chỉ ra những gì bạn cần, sau đó:

yum install whatever_package_looked_right_from_the_list

+1: bất cứ gói nào nhìn đúng
Fox Wilson

1

Linux Mint 12 bị thiếu sqlite và nó đã tạo ra lỗi sau:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20090626/sqlite.so' - /usr/lib/php5/20090626/sqlite.so: cannot open shared object file: No such file or directory in Unknown on line 0

Thực hành tốt nhất đối với tôi nó là để tải về và giải nén sqlite.sođể/usr/lib/php5/20090626/


Bạn có thể thay thế nattytrong URL bằng tên phiên bản của bạn, như trusty.
Kimberly W

0

Hỗ trợ SQLite được bật theo mặc định trên trình biên dịch PHP chuẩn của Linux bắt đầu với PHP 5.0.

Bạn sử dụng phiên bản PHP nào? Bạn đã kiểm tra đầu ra phpinfo () để xem SQLite có được bật chưa? SQLite sẽ được kích hoạt trừ khi

--disable-sqlite

tham số được đặt trong chuỗi cấu hình.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.