1.安装apache2
安装命令:sudo apt-get install apache2
启动/停止/重启apache2: service apache2 start/stop/restart
- 卸载apache2
之前卸载重新安装后找不到apache2.conf配置文件,测试使用一下方式卸载后可用。
(1) $ sudo apt-get –purge remove apache2$ sudo apt-get --purge remove apache2.2-common $ sudo apt-get autoremove
(2) (关键一步)找到没有删除掉的配置文件,一并删除
$ sudo find /etc -name “apache“ -exec rm -rf {} \;
$ sudo rm -rf /var/www
然而,在安装成功准备运行的时候,却出现了问题如下所示:
[Fri Oct 14 20:27:03.977120 2016] [core:warn] [pid 4445] AH00111: Config variable ${APACHE_LOCK_DIR} is not defined
[Fri Oct 14 20:27:03.977236 2016] [core:warn] [pid 4445] AH00111: Config variable ${APACHE_PID_FILE} is not defined
[Fri Oct 14 20:27:03.977267 2016] [core:warn] [pid 4445] AH00111: Config variable ${APACHE_RUN_USER} is not defined
[Fri Oct 14 20:27:03.977273 2016] [core:warn] [pid 4445] AH00111: Config variable ${APACHE_RUN_GROUP} is not defined
[Fri Oct 14 20:27:03.977283 2016] [core:warn] [pid 4445] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Fri Oct 14 20:27:03.979139 2016] [core:warn] [pid 4445:tid 140654039287680] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Fri Oct 14 20:27:03.981408 2016] [core:warn] [pid 4445:tid 140654039287680] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
[Fri Oct 14 20:27:03.981422 2016] [core:warn] [pid 4445:tid 140654039287680] AH00111: Config variable ${APACHE_LOG_DIR} is not defined
AH00526: Syntax error on line 74 of /etc/apache2/apache2.conf:
如果不能正常启动。
这个多半是以前卸载的时候没有卸载干净 重新完整卸载一遍就好。
在apache1时候静态php模块直接编译进核心mod模块
在apache2不再内置。
就意味着不用 Apache 内置的 mod_php,也就是要在 Apache 之外处理 php 程序的解释运行问题。看起来是多引入了一个额外的程序 PHP-FPM,既占 CPU 又占内存。但是这样一来,因为 Apache 可以专心处理除 php 之外的静态网页及元素,反而 httpd 进程本身占用的 CPU 和内存可以显著降低,从而从整体上降低资源消耗。
安装5.6 7.1的php后
默认源自动添加了apache2的模块。如果没有需要手动安装添加
例如
sudo apt-get install libapache2-mod-php5.6
apache2通过模块连接到php。
从PHP 5.6 => PHP 7.1
默认PHP 5.6在您的系统上设置,您需要切换到PHP 7.1。
Apache: –
$ sudo a2dismod php5.6
a2dismod关闭5.6模块
$ sudo a2enmod php7.1
a2enmod开启7.1的模块
$ sudo service apache2 restart
命令行:-
$ update-alternatives –set php /usr/bin/php7.1
同时用update-alternatives修改 为7.1的软连接。
从PHP 7.1 => PHP 5.6
默认PHP 7.1在您的系统上设置,您需要切换到PHP 5.6。
Apache: –
$ sudo a2dismod php7.1
$ sudo a2enmod php5.6
$ sudo service apache2 restart
命令行:-
$ sudo update-alternatives –set php /usr/bin/php5.6
如果在a2enmodphp5.6出现 “Module php5.6 does not exist”
多半是apache内 没有加载上模块
我们创建两个文件就好了
文件1
复制下面内容创建 php5.6.conf 在 /etc/apache2/mods-available/ :
AddType application/x-httpd-php .php .phtml .php5
AddType application/x-httpd-php-source .phps
文件2
复制下面内容创建php.load 同样在 /etc/apache2/mods-available/
LoadModule php5_module /usr/lib/apache2/modules/libphp5.so
保存好后退出输入
a2enmod php && /etc/init.d/apache2 restart
Ubuntu – 安装和部署php5.6 nginx php5.6-fpm
1.首先输入用户名和密码进行登录
2.升级更新软件包
sudo apt-get update
sudo apt-get upgrade
判断都填y
3.安装nginx
sudo apt-get install nginx
在浏览器输入你的ip地址测试是否安装成功
- PHP
apt-get -y update
add-apt-repository ppa:ondrej/php
apt-get -y update
apt-get -y install php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd
php5.6-xml php5.6-fpm
4.安装数据库
sudo apt-get install mysql-server php5-mysql
过程中要输入两次数据库的密码
输入mysql -u root -p 测试数据库安装是否成功
quit 可以退出
5.安装php-fpm
sudo apt-get install php5-fpm
6.配置php-fpm
sudo vi /etc/php5/fpm/php.ini
将;cgi.fix_pathinfo=1改成cgi.fix_pathinfo=0(还要去掉分号) 位置在全屏状态下的40%的第一行,看右下角
修改保存内容的方法自己查看vi 的操作
7.重启php-fpm
sudo service php5-fpm restart
8.解决nginx打开php文件总是显示下载框的问题
sudo vi /etc/nginx/sites-available/default
去掉注释保存
9.重启nginx
sudo service nginx restart
10.测试nginx是否解析php
cd /usr/share/nginx/html
sudo vi index.php
在index.php中输入
<?php phpinfo(); ?>
11.修改权限
1)首先进入服务器根目录 cd usr/share/nginx
2)再使用chmod sudo chmod 777 html/