2017-10-20 09:39:35 cross_the_Atlantic 阅读数 1736
  • PHP环境搭建

    本课程旨在讲解LAMP平台的搭建与部署,学完本课程,PHP相关学习人员能够独立的搭建PHP的运行及开发环境LAMP平台,学会开发中常用的SSH工具XSHELL及FTP工具filezilla等工具的使用及作用,掌握部分linux命令。

    7393 人正在学习 去看看 张双

Linux 下搭建 PHP 开发环境

如今许多服务器采用nginx+fpm+php+mysql的基础架构来运行我们的Web应用,这就要求我们本地的开发环境需要和实际生产环境尽量相同

这篇文章比较全面地讲解了如何在Linux打造PHP的开发环境,希望对大家有帮助。

搭建准备

  • ubuntu16.04系统(推荐双系统)

搭建过程

unbuntu编译环境安装

//编译过程需要的环境包
sudo apt-get install build-essential libtool

安装依赖包

//nginx依赖包 openssl zlib pcre
sudo apt-get install libpcre3 libpcre3-dev zlib1g-dev libssl-dev
//php依赖包
sudo apt-get install autoconf libxml2-dev curl libcurl3 libcurl3-dev

安装nginx

//下载并解压nginx安装包
sudo wget http://nginx.org/download/nginx-1.13.6.tar.gz
sudo tar -vxzf nginx-1.13.6.tar.gz
//安装nginx
cd nginx-1.13.6
sudo ./configure - -prefix=/usr/local/nginx
sudo make
sudo make install
//创建nginx命令软链
sudo ln -s /usr/local/nginx/sbin/nginx /usr/lcoal/bin/nginx
//启动nginx
sudo nginx

nginx 启动后浏览器输入 lcoalhost 可看到 nginx 欢迎界面表示 nginx 安装并且启动成功,若没有看到 welcome 界面,进程中查看是否 nginx 没有启动起来,大多原因是80端口被占用,可以修改 nginx.conf 文件中的端口号或将占用80端口的进程更换新端口运行即可

安装php

//下载并解压php安装包
sudo wget http://docs.php.net/distributions/php-7.1.10.tar.bz2
sudo tar -xf php-7.1.10.tar.bz2
//安装php
cd php-7.1.10
sudo ./configure \
--prefix=/usr/local/php7 \
--enable-fpm \
--enbale-ftp \
--enable-mysqlnd \
--enable-debug \
--enable-zip \
--enable-sockets \
--enable-gd-jis-conv \
--enable-gd-native-fft \
--enable-libgcc \
--enable-iconv \
--enbale-mbstring
sudo make
sudo make install

//php配置文件
sudo cp php.ini-development /usr/local/php7/lib/php.ini
sudo vim /usr/local/php7/lib/php.ini
//打开配置php错误日志
error_log = /tmp/php.err
//php-fpm配置文件
sudo cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.conf
//php-fpm默认使用nobody组来运行的,所以需要新建nobody用户组
sudo addgroup nobody
//创建php-fpm命令软链
sudo ln -s /usr/local/php7/sbin/php-fpm /usr/local/bin/php-fpm\
//运行php-fpm
sudo php-fpm

配置nginx用php-fpm处理php文件

设置nginx.conf配置文件server内容

server {
    listen       80;
    server_name  matt.test.com; //本地虚拟域名
    charset      utf-8;
    access_log   logs/matt.test.com.access.log;
    error_log    logs/matt.test.com.error.log;

    location \ {
        root   /data/web/matt.test.com;
        index  index.html index.htm index.php
    }

    location ~ \.php$ {
        root   /data/web/matt.test.com;
        fastcgi_pass    matt.test.com:9000;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include         fastcgi_params;
    }
}

安装php扩展

由于我们是编译安装的php,仅仅只包含了我们enable的一些扩展参数,实际项目如果需要我们添加除此之外的扩展可以根据实际情况安装,具体安装方法见 — [ php编译安装扩展 ]

安装mysql

编译安装mysql非常简单,mysql官方网站上有详细教程,下面是安装步骤

官网下载mysql源码包, [下载地址],选择对应的版本下载tar.gz后缀的mysql压缩包

//下载依赖包
sudo apt-cache search libaio
sudo apt-get install libaio1
//为mysql添加组和用户
sudo groupadd mysql
sudo useradd -r -g mysql -s /bin/false mysql
//解压压缩包
sudo tar zxvf /path/to/mysql-VERSION-OS.tar.gz //这是你的mysql压缩包路径
//复制到安装路径
sudo cp mysql /usr/local/mysql
//添加mysql-files文件夹
cd mysql
sudo mkdir mysql-files
sudo chmod 750 mysql-files
//修改mysql用户组
sudo chown -R mysql:mysql mysql
//初始化mysql
cd mysql/bin/
//记住mysql初始化得到的密码方便登陆
sudo ./mysqld --initalize --user=mysql
sudo ./mysql_ssl_rsa_setup
sudo ./mysqld_safe --user-mysql
//设置mysql开机启动和mysql命令软链
sudo cp support-files/mysql.server /etc/init.d/mysql.server
sudo ln -s /bin/mysql /usr/local/bin/mysql
//启动mysql
mysql -u root -p

以上就是linux下搭建php开发环境的全部步骤和内容,至于开发工具选择自己熟悉喜欢的即可,推荐sublime,phpstorm

2019-03-24 14:35:00 weixin_43464294 阅读数 244
  • PHP环境搭建

    本课程旨在讲解LAMP平台的搭建与部署,学完本课程,PHP相关学习人员能够独立的搭建PHP的运行及开发环境LAMP平台,学会开发中常用的SSH工具XSHELL及FTP工具filezilla等工具的使用及作用,掌握部分linux命令。

    7393 人正在学习 去看看 张双

Linux上搭建php开发环境

Linux上搭建php开发环境

Linux上搭建开发环境还是很简单的很多时候都是一个命令就结局了。

搭建php开发环境也是也就是直接一条命令sudo apt-get install php mysql apche就可以了。但是我之后再安装PHPstorm使用浏览器打开的时候就遇到了一些问题,原因是php安装的不太完整。不过他会提示你那个组件没有安装的。也是一条命令的事情。

但是呢又一次我想起用gd2这个扩展,结果都让我去官网上面去下这个扩展。然而官网上根本没有这个扩展。后来其实也是一条命令的事情。apt-get install php7.2-gd。其实吧有时候网上的也不太靠谱。

或者说他们遇到的情况不太适合自己。

posted @ 2019-03-24 14:35 秦晓 阅读(...) 评论(...) 编辑 收藏
2015-12-26 18:19:49 huanfengyun 阅读数 5059
  • PHP环境搭建

    本课程旨在讲解LAMP平台的搭建与部署,学完本课程,PHP相关学习人员能够独立的搭建PHP的运行及开发环境LAMP平台,学会开发中常用的SSH工具XSHELL及FTP工具filezilla等工具的使用及作用,掌握部分linux命令。

    7393 人正在学习 去看看 张双
   在开始进入正题前,先普及一点基础知识。在 Linux 环境下,我们通过命令行安装软件的时候,可能会出现错误。当错误出现的时候,我们怎么撤销之前的步骤,重新安装软件呢?解决方案如下
    (1) 已经执行 configure 操作
    解决:根据正确的参数重新 configure 即可
    (2)已经执行 configure、make 操作
    解决:删除解压后的文件目录,重新解压、configure、make
    (3)已经执行 configure、make、make install 操作
    解决:首先删除安装后的文件(有指定安装目录的情况 /usr/local/http2),然后删除解压后的目录,最后重新解压、configure、make、make install 就行了。好了,下面开始进入正题了。

一、 安装 apache
1. 配置(apache 安装配置) 在安装前记得切换到 root ,否则会因权限问题安装失败
./configure --prefix=/usr/local/http2 \
--enable-modules=all \
--enable-mods-shared=all \
--enable-so
// --enable-mods-shared=all 模块共享类型,一次性编译所有模块到 apache 内
执行 ./configure --help 可查看默认配置及配置帮助信息,如安装目录 --prefix 等

2. 安装
执行 make && make install 就完成安装了

3. 启动 apache
进入到安装目录 /usr/local/http2/bin
执行命令 ./apachectl start 可启动 apache
启动 apache 的时候,可能会提示 Could not reliably determine the server's fully ...
其实这不是什么错误,可忽略,也可通过修改配置文件解决这个问题,
进入安装目录,/usr/local/http2/conf/ 找到 httpd.conf ,在该文件中查找 ServerName,
把它前面的 # 号去掉就行了 。

4. 访问
安装完成后,在浏览器中输入本机 ip 地址,即可访问到 apache 默认的页面
如输入本机 ip :192.168.0.141


二、 安装 php 的依赖软件
现在要把 php 依赖的一些软件(xml、gd、jpeg、png、freetype)都安装上去 ,然后才能安装 php 。

1. 安装 xml 依赖
下载 libxml2,然后安装
安装前配置:./configure --prefix=/usr/local/libxml2 --without-zlib
然后 make&&make install

2. 安装 jpeg8
安装前配置 ./configure --prefix=/usr/local/jpeg --enable-share --enable-static
然后 make && make install
--enable-share 把 jpeg 需要的函数库程序都编译到该软件里面,这样函数调用速度快,但是软件本身比较大
--enable-static 静态引入方式,这样当需要调用还没引入的函数时,会立即 include 进来,这样软件本身比较小,但是函数调用速度慢

3. 安装 libpng
./configure && make && make install

4. 安装 freetype 库(字体库)
./configure --prefix=/usr/local/freetype
make && make install

5. 安装 GD 库
./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg/ --with-png --with-zlib --with-freetype=/usr/local/freetype
make && make install

6. 安装 libXpm-3.5.10
// 有的系统可能没安装这个,要自己安装

直接用默认的配置就行
./configure
make && make instsall

三、安装配置 php
1. 安装 php

参数解析:
./configure --prefix=/usr/local/php --with-apxs2=/usr/local/http2/bin/apxs
apache 的支持,作用: 给 apache 生成 php 模块;修改 /usr/local/http2/conf/httpd.conf 的配置文件,使其引入 php 模块
mysqlnd 表示激活 php 本身的 mysql 驱动并使用,因还我们还没自己安装 mysql,所以这样可用默认的 mysql 。
 --enable-mbstring=all 宽字节函数库对 php 的支持

./configure --prefix=/usr/local/php 
    --with-apxs2=/usr/local/http2/bin/apxs
    --with-mysql=mysqlnd
    --with-pdo-mysql=mysqlnd
    --with-mysqli=mysqlnd
    --with-freetype-dir=/usr/local/freetype
    --with-gd=/usr/local/gd
    --with-zlib
    --with-libxml-dir=/usr/local/libxml2
    --with-jpeg-dir=/usr/local/jpeg
    --with-png-dir
    --with-xpm-dir=/usr/local/libxpm
    --enable-mbstring=all
    --enable-mbregex
    --enable-shared

配置完成后,安装 make && make install

安装成功后,会出现如下提示
License:
This software is subject to the PHP License, ... at this point.
+---------------------------------------------------------------+

Thank you for using PHP.

    PHP 安装完成后,/usr/local/http2/conf/httpd.conf 会把相应的 php 模块引入进来,如
    LoadModule php5_module            modules/libphp5.so
    .... ...

2. 安装完成后,进行相关设置
把 php 解压目录里面的 php.ini 配置文件到指定目录
cp php.ini-development /usr/local/php/lib/php.ini

3. 配置 Apache 使其支持 php
vim /usr/local/http2/conf/httpd.conf
(1)在 httpd.conf(Apache 主配置文件,在 /usr/local/http2/conf 目录下)中添加
AddType application/x-httpd-php .php
使 apache 遇到 php 文件时懂得调用 php 模块解析
(2)设置时区
在 /usr/local/php/lib 中修改 php.ini 配置文件,设置时区
data.timezone = PRC(记得把前面的分别去掉)

设置完成后,重启 apache 服务器
/usr/local/http2/bin/apachectl restart
至此所有安装步骤完成,在 apache 的目录下(/usr/local/apache2/htdocs)写个测试文件如 test.php
内容:
<?php
phpinfo();
?>
然后在浏览器中访问:192.168.0.141/test.php
如果访问成功,说明安装配置成功

注意:在使用 ThinkPHP 的时候,可能会出现下面这个问题

thinkphp开发的项目访问的时候出现了 页面错误!请稍后再试~ 排查了很多原因,最终是这样的解决的:

开启debug模式。在入口文件处加上 define(‘APP_DEBUG‘, true);  就ok了

此外,在系统目录下创建的文件夹,没有写权限,要修改文件夹权限才能写入,才能正常访问,如
chmod -R 777 thinkphp(即让该文件夹及其所有子文件夹可读可写可执行)

四、安装配置 mysql
1. 安装 cmake(更先进的 configure)
解压后执行配置命令 ./bootstrap,配置完成后 make && make install,要以 root 权限安装 。

2. 安装 mysql
tar zxvf mysql****
cmake 
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql
-DMYSQL_DATADIR=/usr/local/mysql/data
-DDEFAULT_CHARSET=utf8
-DDEFAULT_COLLATION=utf8_general_ci
(安装目录,数据存储目录,默认的字符集,校对字符集
然后 make && make install
    在进行 mysql 的 configure 操作的时候,可能会提示软件依赖错误,依赖文件 libncurses5-dev
    解决方法:安装 ncurses-devel
    rpm -ivh ncurses-devel-5.7-3.200090208.el6.i686.rpm(现在可能不是这个文件名了,自己 google 吧)
    依赖解决好后要删除 CMakeCache.txt 文件。

3. 配置 mysql
(1)给 mysql 复制一个配置文件
在 mysql 我解压目录下,有个 support-files 文件夹,进入这个文件夹,执行复制命令
cp my-medium.cnf /etc/my.cnf
(2)useradd mysql(添加用户)
(3)chmod +x /home/lion/storm/web-php/install/mysql5.5/install
(4)chown -R mysql.mysql /home/lion/storm/web-php/install/mysql5.5/install
(5)初始化 mysql 数据库
/home/lion/storm/web-php/install/mysql5.5/install/scripts/mysql_install_db --user=mysql --basedir=/home/lion/storm/web-php/install/mysql5.5/install --datadir=/home/lion/storm/web-php/install/mysql5.5/install/data &
(6)把 mysql 安装文件(除了 data 之外)的主人都改为 root,避免数据库恢复为出厂设置
chown -R root /home/lion/storm/web-php/install/mysql5.5/install
chown -R mysql /home/lion/storm/web-php/install/mysql5.5/install/data
(7)后台运行 mysql 服务
/home/lion/storm/web-php/install/mysql5.5/install/bin/mysqld_safe --user=mysql &
查看 mysql 是否有启动
ps -A | grep mysql
如果启动成功,则显示以下信息
------ mysqld_safe
------ mysqld
(8)进入 mysql 操作终端的执行程序(在 /home/lion/storm/web-php/install/mysql5.5/install/bin 目录下)
执行命令 ./mysql 就可以运往 mysql 了。
(9)设置 mysql 用户和密码
为了数据库安全,把 localhost 之外的用户全部删除掉,并为 localhost 设置密码,设置密码时调用加密函数给密码加密;
mysql 的所有用户信息都放在 mysql 数据库中,而且这也是 mysql 的核心数据库 。所以要到这个数据库中进行用户管理操作,执行命令
use mysql 
切换到这个数据库,执行下面的操作:
    mysql> delete from user where Host != 'localhost';
    mysql> select Host, User, Password form user;
    mysql> update user set Password=password(123456);
    mysql> select Host, User, Password from user;
    mysql> flush privileges;(刷新,使对权限的修改立即生效)

(10)设置完成后,执行 flush privileges; 命令,使设置立即生效 。设置完成后,以后不要随便操作 mysql 中的 mysql 数据库了 。
(11)执行 exit 命令退出当前 mysql,然后重新登录 mysql
./mysql -uroot -p123456

(12)通过 php 中访问 mysql,在 apache 的 htdocs 目录下,创建一个 data.php 文件,来访问 mysql 。
<?php
    $link = mysql_connect('localhost', 'root', '123456');
    mysql_select_db('test', $link);
    mysql_query('set name utf8');
    $sql = "select * from goods";
    $qry = mysql_query($sql);
    while($rst = mysql_fetch_assoc($qry)) {
        print_r($rst);
        echo "<br />";
    }



2018-03-18 18:27:17 u010672439 阅读数 1357
  • PHP环境搭建

    本课程旨在讲解LAMP平台的搭建与部署,学完本课程,PHP相关学习人员能够独立的搭建PHP的运行及开发环境LAMP平台,学会开发中常用的SSH工具XSHELL及FTP工具filezilla等工具的使用及作用,掌握部分linux命令。

    7393 人正在学习 去看看 张双

Window下使用linux开发环境

使用laravel的人都知道Homestead是有多方便。但是要使用Homestead在墙内是很困难的。所以索性放弃了Homestead,自己搭建类似Homestead的开发环境。

  • 使用的工具
  • Vmware Workstation
  • contos7
  • *mobaxterm

Homestead原理简要说明

其实,Homestead的原理也很简单,就是使用虚拟机(VMware、virtualbox、paralles)配合使用vagrant来使用的。
首先:vagrant能够在cmd中使用各种命令来管理虚拟机,vagrant也有类似docker那样的包,在vagrant中叫box。
其次:vagrant往虚拟机中添加各种box,就跟在虚拟机中安装各种软件是一样的。
而:homestead是包装了vagrant的一些集合命令,是的homestead可以快速简便的创建站点,重启服务等操作。

接下来,知道了这种原理之后,就可以自己创建模拟环境了

名词:主机-》windows; 客户机-》虚拟机中的操作系统
操作目标:使用客户就的开发环境,项目代码在主机中。即在windows下编程,在linux环境中运行。

第一步

安装Vmware 这个就不多说了:
虚拟机中安装centos 这个也自行解决;

第二步

** 在主机(即windows)选择或者创建一个用来共享的文件夹,例如:D:\work;
** 在虚拟机中将文件夹恭喜到客户机中:虚拟机->设置
这里写图片描述

登陆客户机,执行如下命令

sudo vmhgfs-fuse .host:/work /mnt/hgfs

之后就可以在 /mnt/hgfs下看到共享的文件夹了。

如果没看到,参考VMWare与Centos7.0无法共享文件夹的问题总结

第三步、部署项目

在这里,应该在客户机中安装好了lnmp/lamp环境,推荐oneinstack一键安装包。

** 在部署项目过程中,会遇到的问题,
问题1
No input file specified.
解决:
此时在nginx/apache错误日志中应该可以看到 permission denied。
由于共享到客户机中的文件都是root用户的,而且还改变不了用户所属,所以此时使用root用户运行apache跟php-fpm。
修改php-fpm.conf
user=root
group=root

修改nginx.conf

user root root

重启nginx php-fpm

问题2
启动php-fpm 可能会提示不能使用root用户启动的问题。
解决:
在启动php-fpm 时添加一个参数 php-fpm -R
如果是用onestack的,修改 /etc/init.d/php-fpm
这里写图片描述
问题3
重启客户机后,/mnt/hgfs 下看不到共享的文件夹
解决:
登陆客户机之后执行
sudo vmhgfs-fuse .host:/work /mnt/hgfs

如果觉得麻烦,可以自己写个脚本。这个我还不会。。。。。。

第四部

配置站点
接下来的流程就是一般的配置客户机中的站点。
客户机中的站点配置成功之后,在windows下将站点的域名host到客户机的ip。
例如:
192.168.675.129 mysite.tt

第五步

mobaxterm

这里写图片描述

mobaxterm是一个强大的工具,包含了cygin ,ssh ,ftp ,等。
如果是团队开发,用到svn或者git之类的,登陆客户机,进入共享的文件夹中今提交或者更新代码就可以了。

至此,模拟homestead开发环境配置完成。

写在最后

如果觉得麻烦,在windows下就能够满足日常的开发,就不需要这种了。
当然,往后可能会写一些脚本直接来配置这些。。。以后再说吧。

2016-07-15 16:20:11 u013022210 阅读数 681
  • PHP环境搭建

    本课程旨在讲解LAMP平台的搭建与部署,学完本课程,PHP相关学习人员能够独立的搭建PHP的运行及开发环境LAMP平台,学会开发中常用的SSH工具XSHELL及FTP工具filezilla等工具的使用及作用,掌握部分linux命令。

    7393 人正在学习 去看看 张双

linux下安PHP开发环境

1. Oracle VM VirtualBox  下载安装  https://www.virtualbox.org/wiki/Downloads  

2. http://pan.baidu.com/s/1sl4AuVN   密码:6yvx   下载后按装 并且预留一部分给副分区

3. ubuntu下安装Apache+PHP+Mysql

我在ubuntu下配置了一个Apache服务器。通过Apache我们可以学习php网络编程,可以用它来部署自己本地的wordpress博客,从而进一步通过网络和朋友交流。从此,你将深刻体会到网络带个我们的神奇力量,至少我是这样觉得的~~

步骤一,安装apache2

1

sudo apt-get install apache2

安装完成。 
运行如下命令重启下:

1

sudo /etc/init.d/apache2 restart

在浏览器里输入http://localhost或者是http://127.0.0.1,如果看到了It works!,那就说明Apache就成功的安装了,Apache的默认安装,会在/var下建立一个名为www的目录,这个就是Web目录了,所有要能过浏览器访问的Web文件都要放到这个目录里。

步骤二 ,安装php:

1

sudo apt-get install libapache2-mod-php5 php5

此外,建议安装扩展php5-gd php5-mysql,安装方式同上.

安装完后,我们要重新启动Apache,让它加载PHP模块:

1

sudo /etc/init.d/apache2 restart

接下来,我们就在Web目录下面新建一个test.php文件来测试PHP是否能正常的运行,命令:

1

sudo gedit /var/www/test.php

然后输入:

1

2

     

<?php echo "hello,world!!"?>

接着保存文件,在浏览器里输入http://127.0.0.1/test.php,如果在网页中显示hello,world!!,那就说明PHP已经正常运行了。

步骤三,安装mysql数据库:

1

sudo apt-get install mysql-server mysql-client

apt-get程序会自动下载安装最新的mysql版本。在安装的最后,它会要求里输入root的密码,注意,这里的root密码可不是Ubunturoot密码啊,是你要给MySQL设定的root密码。

步骤四,安装phpmyadmin-Mysql数据库管理

1

sudo apt-get install phpmyadmin

phpmyadmin设置:

在安装过程中会要求选择Web serverapache2lighttpd,使用空格键选定apache2,按tab键然后确定。然后会要求输入设置的Mysql数据库密码连接密码Password of the database’s administrative user

然后将phpmyadminapache2建立连接,以我的为例:www目录在/var/wwwphpmyadmin/usr/share /phpmyadmin目录,所以就用命令:

1

sudo ln -s /usr/share/phpmyadmin /var/www

建立链接。

phpmyadmin测试:在浏览器地址栏中打开http://localhost/phpmyadmin

以上ALMP的基本组件就安装完毕了,下面我们再来看一些其他的设置:

步骤五,设置Ubuntu文件执行读写权限

LAMP组建安装好之后,PHP网络服务器根目录默认设置是在:/var/www。由于Linux系统的安全性原则,改目录下的文件读写权限是只允许root用户操作的,所以我们不能在www文件夹中新建php文件,也不能修改和删除,必须要先修改/var/www目录的读写权限。在界面管理器中通过右键属性不能修改文件权限,得执行root终端命令:

1

sudo chmod 777 /var/www

。然后就可以写入htmlphp文件了。777linux中的最高权限,表示可读,可写,可执行。

 

 

其他工具:

1.本地使用命令行下载:(puttyhttp://rj.baidu.com/soft/detail/15699.html?ald

2.本地文件上传至服务器 (WinSCP

http://rj.baidu.com/soft/detail/15150.html?ald

 

没有更多推荐了,返回首页