首页 php教程 php手册 ubuntu通过apt-get方式搭建lnmp环境以及php扩展安装

ubuntu通过apt-get方式搭建lnmp环境以及php扩展安装

Jun 06, 2016 pm 07:47 PM
apt-get lnmp ubuntu 搭建 方式 通过

一直是在用的lnmp的集成安装包搭建lnmp环境,因为工作需要需要安装ldap扩展,在网上怎么都找不到源码安装包,只能卸载掉原来的lnmp环境,用ubuntu的php5-ldap扩展, 在安装中遇到一些问题,网上的文章坑爹的比较多,写篇文章记录下来。 1.安装mysql sudo apt

       一直是在用的lnmp的集成安装包搭建lnmp环境,因为工作需要需要安装ldap扩展,在网上怎么都找不到源码安装包,只能卸载掉原来的lnmp环境,用ubuntu的php5-ldap扩展,

在安装中遇到一些问题,网上的文章坑爹的比较多,写篇文章记录下来。

       

1.安装mysql

     

sudo apt-get install mysql-server mysql-client
登录后复制
安装过程中要输入root用户的密码。

我在安装中出错,是原来的mysql-cilent mysql-workbench 未完全卸载,将mysql组件完全卸载的方法:

删除mysql前 先删除一下 /var/lib/mysql 还有 /etc/mysql

sudo rm /var/lib/mysql/ -R
sudo rm /etc/mysql/ -R

sudo apt-get autoremove mysql* --purge
sudo apt-get remove apparmor
登录后复制

全部删除之后再执行  apt-get install mysql-server mysql -client 

2.安装nginx

sudo apt-get install nginx
登录后复制
 

3.安装成功后。我们重启下nginx服务

sudo service nginx restart<span> </span>
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

启动之后我们就可以访问以下我们的地址了。看能不能出现nginx的欢迎界面。

4.这里我们使用php5-fpm来作为我们的php解析。

sudo apt-get install php5-fpm 
登录后复制

5.接下来我们要修改一下nginx的站点配置了。

ngnix的配置文件存放在/etc/nginx/sites-availble/default

    server { 

            listen   80; ## listen for ipv4; this line is default and implied 

            listen   [::]:80 default ipv6only=on; ## listen for ipv6 

            root /usr/share/nginx/www; 

            index index.php index.html index.htm; 

            # Make site accessible from http://localhost/ 

            server_name _; 

            location / { 

                    # First attempt to serve request as file, then 

                    # as directory, then fall back to index.html 

                    try_files $uri $uri/ /index.html; 

            } 

            location /doc { 

                    root /usr/share; 

                    autoindex on; 

                    allow 127.0.0.1; 

                    deny all; 

            } 

            #error_page 404 /404.html; 

            # redirect server error pages to the static page /50x.html 

            # 

            error_page 500 502 503 504 /50x.html; 

            location = /50x.html { 

                    root /usr/share/nginx/www; 

            } 

            # proxy the PHP scripts to Apache listening on 127.0.0.1:80 

            # 

            #location ~ \.php$ { 

            #       proxy_pass http://127.0.0.1; 

            #} 

            # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 

            # 

            location ~ \.php$ { 

                    try_files $uri =404; 

                    # With php5-cgi alone:
                    # fastcgi_pass 127.0.0.1:9000;
                    # With php5-fpm:
                    # fastcgi_pass unix:/var/run/php5-fpm.sock; 

                    fastcgi_index index.php; 

                    include fastcgi_params; 

            } 

            # deny access to .htaccess files, if Apache's document root 

            # concurs with nginx's one 

            # 

            location ~ /\.ht { 

                    deny all; 

            } 

    } 
登录后复制


6.我们在安装php5相关的一些组件。

sudo apt-cache search php5 
apt-get install php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl 
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

7.重启服务

sudo service php5-fpm restart 
sudo service nginx restart
登录后复制

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

经测试,现在应该已经安装成功了。

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制

PHP扩展的安装方式通常分为两种:
1. 随同PHP编译
2. 生成单独的.so文件
这里介绍第二种方式,对于第二种方式执行效率可能低些,但是模块化,就是可以保持php安装不变的情况下,通过php.ini连接单独生成的so文件实现扩展,
比如您已经通过了tar包方式安装了php,那么现在想增加扩展:

安装CURL扩展
I. 生成动态链接库文件.SO
方法如下:
方法1. apt-get install php5-curl
方法2. 去PHP网站下载tar包,phpize本地编译生成.so
方法3. pear方式安装,通过pecl命令去在线下载编译生成.so


方法1在ubuntu下是最简单的,命令执行完会告知.so所在目录

II. 配置php.ini
打开php.ini,指定extension_dir目录,如果extension_dir = '/usr/lib',那么接下来把生成的.so文件(如curl.so)复制到/usr/lib目录下,并且加入一个新条目:
extension=curl.so

III. 使之生效
重新启动apache,运行phpinfo()看是否生效

安装PDO_MYSQL扩展

采用pear方式安装
I. 安装pear
apt-get install php-pear 如果没有pear要先安装pear
II. 安装pdo,pdo_mysql
pecl install pdo pecl install pdo_mysql
生成.so复制到/usr/lib目录下.

如果没有安装php和mysql的开发包,在执行第II步之前还需要安装
apt-get install php5-devapt-get install libmysqlclient15-dev
III. 修改配置文件php.ini
增加条目
extension=pdo.so
extension=pdo_mysql.so
IV. 使之生效
重新启动apache,运行phpinfo()看是否生效

在php5.2.10中,php默认已经安装了pdo,所以extension=pdo.so不加,但是发现和自己生成的pdo_mysql.so不匹配错误,解决办法是:
重新安装php,增加参数--disable-pdo 禁止pdo模块,用自己前面生成pdo.so,pdo+mysql.so就OK了

安装ImageMagic扩展

采用pear方式安装
I. 安装ImageMagick
sudo apt-get install imagemagick

II. 安装imagemagick 的lib 供php调用
sudo apt-get install libmagick++-dev

III. 调用当前的pecl安装imagick
pecl install imagick

IV. 修改php.ini.重启apache服务器
在php.ini中添加: extension = imagick.so


phpize的安装

phpize是属于php-devel的内容,所以只要运行
apt-get install php-devel就行。ubuntu 下是 apt-get install php-dev

我安装的时候装的是php5-dev

装完之后是用phpize5来装自己编写的php扩展

登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
登录后复制
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

ubuntu终端打不开怎么办? 修复Ubuntu无法打开终端问题的方法 ubuntu终端打不开怎么办? 修复Ubuntu无法打开终端问题的方法 Feb 29, 2024 pm 05:30 PM

如今,Ubuntu不允许其用户打开终端是一个非常普遍的问题。如果您收到类似的问题并且不知道下一步该怎么做,请了解有关如何在Linux设备上解决此“Ubuntu无法打开终端”问题的五个修复程序。事不宜迟,让我们深入探讨导致它的原因及其可用的解决方案。为什么Ubuntu打不开它上面的终端?这主要发生在您安装一些有缺陷的软件或修改终端配置时。除此之外,与语言环境交互并破坏它们的新应用程序或游戏也可能导致类似的问题。一些用户在Ubuntu的活动菜单中搜索终端时报告修复了这个问题。这表明这个

如何在Ubuntu开始菜单中移除图标? 如何在Ubuntu开始菜单中移除图标? Jan 13, 2024 am 10:45 AM

ubuntu系统开始菜单里面列出了好多的软件图标,有很多不常用的图标,想要删除,该怎么删除呢?下面我们就来看看详细的教程。1、首先进入ubuntu桌面,点击左边面板下面的开始菜单。2、里面可以找到一个文本编辑器图标,我们要把它删除了。3、现在我们回到桌面直接鼠标右键打开终端。4、使用命令打开应用列表目录。sudonautilus/usr/share/applicationssudonautilus~/.local/share/applications5、在里面找到对应的文本编辑器图标。6、接着直

以超级用户身份登录Ubuntu 以超级用户身份登录Ubuntu Mar 20, 2024 am 10:55 AM

在Ubuntu系统中,root用户通常是禁用状态的。要激活root用户,可以使用passwd命令设置密码,然后使用su-命令以root身份登录。根用户是具有系统管理权限且不受限制的用户。他拥有访问和修改文件、用户管理、软件安装和删除,以及系统配置更改等权限。根用户与普通用户有着明显的区别,根用户拥有系统中最高的权限和更广泛的控制权。根用户可以执行重要的系统命令和编辑系统文件,而普通用户则无法做到这一点。在本指南中,我将探讨Ubuntu根用户,如何以根用户身份登录,以及它与普通用户的不同之处。注意

Ubuntu 24.04 LTS 七大亮点抢先看 Ubuntu 24.04 LTS 七大亮点抢先看 Feb 27, 2024 am 11:22 AM

Ubuntu24.04LTS,代号「NobleNumbat」即将发布!如果你正在使用的是Ubuntu23.10这类非LTS版本,迟早需要考虑升级。对于那些使用Ubuntu20.04LTS或Ubuntu22.04LTS的用户,是否升级值得深思。Canonical已经宣布,Ubuntu24.04LTS将提供长达12年的更新支持,细分如下:作为LTS版本,它会有5年的常规维护和安全更新。如果订阅UbuntuPro,还能享受额外5年的支持。目前,这个额外的支持期限已经延长至7年,这意味着你将获得长达12

ubuntu 20.04录屏软件OBS安装和卸载图文教程 ubuntu 20.04录屏软件OBS安装和卸载图文教程 Feb 29, 2024 pm 04:01 PM

OBS是由世界各地的志愿贡献者在空闲时间开发的开源软件。一款视频直播录制软件,主要用于视频的录制、直播的创流。Ubuntu/Mint的安装请注意,OBSStudio在ChromeOS上不能完全工作,屏幕和窗口捕捉等功能不能使用。建议使用xserver-xorg1.18.4或更新的版本,以避免OBS中某些功能的潜在性能问题,如全屏投影仪。FFmpeg是必需的如果你没有安装FFmpeg(如果你不确定,那么你可能没有),你可以用以下命令得到它:sudoaptinstallffmpeg我这里已经安装有了

Ubuntu 最终支持禁用 snap 软件包的自动更新 Ubuntu 最终支持禁用 snap 软件包的自动更新 Jan 13, 2024 am 10:09 AM

snap是Canonical为使用Linux内核和systemdinit系统的操作系统开发的软件打包和部署系统。这些被称为snap的软件包和使用它们的工具snapd可以在一系列的Linux发行版中使用,并允许上游软件开发者直接向用户发布他们的应用程序。借助snap,用户可以轻松地安装Linux应用程序,在默认情况下,snapd一天内会检查四次更新,并自动将snap应用更新到最新的版本。虽然有很多方法可以控制更新的安装时间和频率,但为了安全用户无法完全关闭自动更新。虽然snap的初衷很好,但很多开

Android TV Box 获得非官方 Ubuntu 24.04 升级 Android TV Box 获得非官方 Ubuntu 24.04 升级 Sep 05, 2024 am 06:33 AM

对于许多用户来说,破解 Android 电视盒听起来令人畏惧。然而,在 Broadcom 芯片短缺期间,开发人员 Murray R. Van Luyn 面临着寻找 Raspberry Pi 合适替代品的挑战。他与 Armbia 的合作努力

Ubuntu Linux中如何删除Firefox Snap? Ubuntu Linux中如何删除Firefox Snap? Feb 21, 2024 pm 07:00 PM

要在UbuntuLinux中删除FirefoxSnap,可以按照以下步骤进行操作:打开终端并以管理员身份登录到Ubuntu系统。运行以下命令以卸载FirefoxSnap:sudosnapremovefirefox系统将提示你输入管理员密码。输入密码并按下Enter键以确认。等待命令执行完成。一旦完成,FirefoxSnap将被完全删除。请注意,这将删除通过Snap包管理器安装的Firefox版本。如果你通过其他方式(如APT包管理器)安装了另一个版本的Firefox,则不会受到影响。通过以上步骤

See all articles