Unbutu之web环境部署——常用软件安装
一、Vim
apt-get install vim -y
二、Flash
apt-get install flashplugin-installer
三、Sublime
3.1 Sublime 下载
下载地址:http://www.sublimetext.com/3
3.2 安装
sudo dpkg -i xxx.deb
3.3 配置为 php 运行
依次点击 Tools -> Build System -> new Build System,写入内容:
{"cmd":["/usr/local/php/bin/php", "$file"]}
3.4 快捷键
- 隐藏/显示侧栏:ctrl + k ctrl + b
- 运行:ctrl + b
四、PHP
4.1 依赖安装
apt-get install libxml2-dev -y
4.2 PHP下载
下载地址:http://php.net/downloads.php
4.3 编译与安装
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/conf make & make install
五、Jdk
apt-get install default-jdk -y
测试: java -showversion
六、Memcached
6.1 依赖
apt-get install libeventdev -y
6.2 Memcached下载
下载地址:http://memcached.org/downloads
6.3 编译与安装
./configure --prefix=/usr/local/memcached make & make install
6.4 运行
/usr/local/memcached/bin/memcached -d -m 512 -u txl -l 127.0.0.1 -p 11211 -c 1024 -P /usr/local/memcached/memcached.pid
-d:以守护进程运行
-m:分配内存
-l:连接ip地址
-p:端口
-c:并发连接数
-P:Pid文件
6.5 测试
telnent 127.0.0.1 11211 set key flags 过期时间 bytes value get key
七、PHP Memcached 扩展
7.1 依赖
1)autoconf:生成配置脚本工具
apt-get install autoconf -y ./configure
2)phpize:默认在 php/bin 目录下,用于添加扩展
3)zlib:压缩函数调用库
apt-get install zlib1g-dev
7.2 libmemcached(客户端)
1)libmemcached 下载
下载地址:https://launchpad.net/libmemcached/+download
2)编译与安装
./configure make & make install
7.3 PHP Memcached扩展
1)git安装
apt-get install git -y
2)git clone
git clone https://github.com/php-memcached-dev/php-memcached.git
3)切换到 PHP7 分支
git checkout php7
4)生成
phpize
5)编译与安装
./configure –with-php-config=/usr/local/php/bin/php-config –disable-memcached-sasl make & make install
7.4 PHP 配置修改
1)验证
在 php/bin/php-config 脚本中找到 –with-config-file-path=/usr/local/php/conf ,说明 php 会在该文件夹下寻找 php.ini
2)拷贝模板配置文件到 php 配置文件目录
cp /home/txl/DownLoads/php7/php.ini-development /usr/local/php/conf/php.ini
3)给 php.ini 赋予权限
sudo chown txl:txl php.ini
4)在 php.ini 中添加 memcached 扩展
echo 'extension="memcached.so"' >> /usr/local/php/conf/php.ini
5)查看
php -m
八、Apache
8.1 依赖
1)PCRE
apt-get install libpcre3-dev -y
2)Libexpat
apt-get install libexpat1-dev
3)APR
下载地址:http://apr.apache.org/download.cgi
编译与安装:
./configure --prefix=/usr/local/apr make & make install
4)APR-Util
下载地址:http://apr.apache.org/download.cgi
编译与安装:
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
8.2 Apache 下载
下载地址:http://httpd.apache.org/download.cgi
8.3 编译与安装
./configure --prefix=/usr/local/httpd --with-apr-util=/usr/local/apr-util make & make install
8.4 启动
/usr/local/httpd/bin/apachectl
九、Apache 与 PHP 结合
9.1 联合 php 模块重新编译 Apache
进入 Apache 源码目录:
./configure --prefix=/usr/local/httpd --enable-so --with-apr-util=/usr/local/apr-util make & make install
9.2 libiconv 安装
1)libliconv 下载
下载地址:http://www.gnu.org/software/libiconv
2)编译与安装
./configure --prefix=/usr/local make & make install
安装后的 iconv 库位置为:/usr/local/lib/libiconv.so
在 Ubuntu16 中编译有可能会出错,解决方案:
1. 打开 libiconv/srclib/stdio.h
2. 搜索 gets is a security hole,将这一行替换为:
#if defined(__GLIBC__) && !defined(__UCLIBC__) && !__GLIBC_PREREQ(2, 16) _GL_WARN_ON_USE(gets, "gets is a security hole - use fgets instead"); #endif
3)刷新动态链接库缓存
sudo ldconfig
9.3 重新编译与安装 PHP
进入 PHP 源码目录:
make clean ./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/conf –with-apxs2=/usr/local/httpd/bin/apxs –with-iconv-dir=/usr/local/lib make ZEND_EXTRA_LIBS='-liconv' make install
9.4 httpd.conf 配置修改
安装完成后,系统会自动拷贝 /usr/local/httpd/modules/libphp7.50 文件;
并且在 httpd.conf 中会自动加入一行: LoadModule php7_module modules/libphp7.50
在该行下面添加内容:
AddType application/x-httpd-php .php
9.5 Apache 重启
sudo /usr/local/httpd/bin/apachectl restart
十、Apache 多站点配置
10.1 httpd.conf 配置修改
添加内容:
Listen 8090 <VirtualHost *:8090> DocumentRoot /home/txl/phpstormProjects/test ServerName localhost:8090 DirectoryIndex index.php <Directory "/home/txl/phpstormProjects/test"> Options FollowSymLinks Require all granted </Directory> </VirtualHost>
10.2 Apache 重启
十一、PHP Debug 扩展
11.1 git clone
git clone git://github.com/xdebug/xdebug.git
11.2 编译与安装
phpize ./configure make & make install
11.3 php.ini 配置修改
添加内容:
zend_extension=xdebug.so xdebug.remote_enable=On xdebug.remote_handler=dbgp xdebug.remote_host=localhost xdebug.remote_port=9000 // 和 PhpStorm 中对应 xdebug.idekey=phpstorm // 和 PhpStorm 中对应
11.4 Apache 重启
十二、PHP PDO-MySQL 扩展
12.1 重新编译与安装 PHP
进入 PHP 源码目录:
make clean ./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/conf –with-apxs2=/usr/local/httpd/bin/apxs –with-iconv-dir=/usr/local/lib –enable-mysqlnd –with-pdo- mysql=mysqlnd make ZEND_EXTRA_LIBS='-liconv' make install
12.2 php.ini 配置修改
添加内容:
extension=pdo_mysql.so
12.3 Apache 重启
十三、PHP OpenSSL 扩展
13.1 编译和安装
进入 PHP源码目录/ext/openssl:
cp config0.m4 config.m4 phpize ./configure --with-php-config=/usr/local/php/bin/php-config --with-openssl
如果报错 configure:error Cannot find OpenSSL’s <evp.h>,则需要安装相关包:
sudo apt-get install openssl sudo apt-get install libssl-dev
13.2 php.ini 配置文件修改
添加内容:
extension=openssl.so
十四、Composer 安装
14.1 Composer 下载与安装
wget https://getcomposer.org/composer.phar mv composer.phar composer sudo chmod+x composer mv composer /usr/local/bin
测试: composer
14.2 基本使用
1)新建 php 项目文件夹
2)在当前项目下执行 composer init,项目根目录会自动生成 composer.json 文件,大概格式如下:
"autoload":{ "files":["common/function.php"], "classmap":["C/"] }
3)在当前项目下执行 composer dump-autoload,项目根目录会自动生成 vendor 文件夹,其中有一个 autoload.php 文件,只需在需要的 php 页面中引用它。
4)安装外部库
在 composer.json 中添加内容:
"require":{ "vrana/notorm":"dev-master" }
然后执行:
composer install
14.3 国内镜像源安装
进入项目根目录(也就是 composer.json 所在的目录):
composer config repo.packagist composer https://packagist.phpcomposer.com
或者手工在 composer.json 文件末尾添加内容:
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" } }
官方镜像列表:https://packagist.org
十五、Git 安装
15.1 下载
sudo apt-get install git
测试: git --version
15.2 起始配置
git config --global user.email "1297441127@qq.com" git config --global user.name "txl"
–-global 表示全局配置,任何仓库提交都会使用这个身份来识别
15.3 创建仓库
进入项目根目录:
1)创建一个空的版本仓库: git init
2)加入仓库: git add * 或 git add xxx.php
3)提交: git commit -m "注释内容"
15.4 和 Github 关联(ssh地址)
1)添加主机: git remote add 别名 git@github.com:xxx/xxx.git
2)生成密码: ssh-keygen -t rsa -C "1297441127@qq.com"
3)查看密码: cat /home/txl/.ssh/id_rsa.pub,并在 Github 中添加 SSHkeys
4)提交到服务器: git push 别名 master 提交文件
十六、Nginx 安装
16.1 Nginx 下载
下载地址:http://nginx.org
16.2 编译与安装
./configure --prefxi=/usr/local/nginx make & make install
16.3 运行
sudo /usr/local/nginx/sbin/nginx
十七、Nginx 与 PHP 结合
17.1 重新编译与安装 PHP
进入 PHP 源码目录:
make clean ./configure –prefix=/usr/local/php –with-config-file-path=/usr/local/php/conf –with-apxs2=/usr/local/httpd/bin/apxs –with-iconv-dir=/urs/local/lib –enable-mysqlnd –with-pdo-mysql=mysqlnd –enable-fpm make ZEND_EXTRA_LIBS='-liconv' make install
17.2 php-fpm.conf 配置修改
安装完成后,在 php/sbin 下会有一个 php-fpm 文件;
拷贝 php/etc/php-fpm.conf.default 文件:
cp php-fpm.conf.default php-fpm.conf
修改其参数:
pid=run/php-fpm.pid error_log=log/php-fpm.log log_level=notice daemonize=yes ;以守护进程运行
17.3 www.conf 配置修改
进入 php/etc/php-fpm.d,修改 www.conf 配置:
listen=127.0.0.1:9000 user=txl group=txl
17.4 FPM 启动
进入 php/sbin:
sudo ./php-fpm
17.5 nginx.conf 配置修改
进入 nginx/conf,修改 nginx.conf 配置:
location ~*\.php$ { root html; fastcgi_pass 127.0.0.1:9000; include /usr/local/nginx/conf/fastcgi_params; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
17.6 Nginx 重启
进入 nginx/sbin:
sudo ./nginx -s reload