如何在Linux / Apache / PHP上启用SQLite?


12

要在我的Windows / Apache / PHP设置上启用SQLite,请取消注释php.ini文件中的以下几行,然后重新启动Apache:

extension=php_pdo.dll
extension=php_pdo_sqlite.dll

现在,我有了一个带有Suse Linux 10.3VPS,并且自动设置了Apache / PHP。查看php.ini文件进行上述更改,我发现Linux上的情况有些不同:

  • 没有取消注释扩展的列表
  • 我找到了“ extension_dir = /usr/lib/php5/extensions”,但在此目录中仅找到:
    • pdo.so
    • pdo_mysql.so

如何在此Linux环境中启用SQLite?


这是一个很棒的教程,介绍如何在linkyx环境中嵌入sqlite:exteon.ro/en/articles/php。希望能帮助到你!
Dinu

Answers:


14

我不能说这到底如何工作。在Debian世界中,它是:

apt-get install php5-sqlite

这将安装所需的库并添加/etc/php5/conf.d/sqlite.ini与

extension=sqlite.so

因此,首先-使用yum查看安装所需的软件包,然后将其添加到上面的php.ini行中。

编辑:对于php7,命令为:

apt-get install php7.0-sqlite

和php.ini文件位于:sudo nano /etc/php/7.0/apache2/php.ini您必须启用extension=sqlite.so


apt-get似乎是debian的事情,有解决方法(susewiki.org/index.php?title=Install-apt4suse),但是我在这里寻找最简单的解决方案,必须有某种方法可以下载并引用Suse中的sqlite库。
爱德华·坦格

百胜就是一种简单的方法
freiheit

好的,所以我将VPS从Suse转换为Debian Linux 4.0 Standard 32位。我输入“ apt-get install php5-sqlite”,它说“正在阅读包装清单,正在构建依赖树...找不到软件包php5-sqlite”。在/etc/php5/conf.d中,还有另外8个.ini文件,但sqlite.ini没有。为什么找不到需要从特定目录运行该软件包的软件包?(我键入“ yum”,并说“ -bash:yum:未找到命令”。)
Edward Tanguay,2009年

Debian使用apt-get,Suse提供了yum(也许还有zypper)。如果apt-get的找不到包,检查它是否存在,并检查其版本库,你有/etc/apt/sources.list/etc/apt/sources.list.d
jldugger

在/etc/apt/sources.list.d中,我有一个名为“ debian.list”的文件,但没有其他文件,我可以从某个地方下载该库并像在Windows上一样在php.ini中引用它,还是需要下载并以某种方式安装?
爱德华·坦格

5

简短版本,但可能是错误的,因为我不知道您的系统使用哪个软件包存储库设置:

yum install php5-sqlite

长版:

yum search php sqlite

或者只是搜索一个:

yum search sqlite

查看返回的列表。弄清楚您需要什么,然后:

yum install whatever_package_looked_right_from_the_list

+1:无论包右看
福克斯威尔逊

1

Linux Mint 12缺少sqlite,并且正在生成以下错误:

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

对我来说,最佳做法是下载并解压缩sqlite.so/usr/lib/php5/20090626/


您可以将nattyURL 替换为版本名称,例如trusty
未知开发人员

0

默认情况下,从PHP 5.0开始,在标准Linux PHP编译中启用SQLite支持。

您使用哪个PHP版本?您是否检查了phpinfo()输出以查看是否启用了SQLite?除非启用SQLite,否则将启用

--disable-sqlite

参数在配置字符串中设置。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.