安装Apache2和PHP:
安装 Apache2:
1 | sudo apt-get install apache2 |
安装PHP模块:
1 | sudo apt-get install php5 |
安装Mysql
1 | sudo apt-get install mysql-server |
其他模块安装:
1 | sudo apt-get install libapache2-mod-php5 |
前两个很容易明白,要想apache能够解析PHP,就需要借助这两个模块来找到php engine。第三个在php操作mysql数据库时用到,大多数人都有数据库编程经验,所以这就不用多解释了。第四个GD库。
1.apache根目录
安装完apache2,根目录在/var/www下,可以通过http://localhost/测试一下是否好用。当然也可以在该目录下新建一个文件test.html来试一试http://localhost/test.html。
(好像是在/var/www/html/
诶)
2.改变apache2的默认目录到当前的开发目录
apache2的默认目录配置在/etc/apache2/sites-enabled/00default文件中。
找到该文件中的DocumentRoot项,将/var/www改为你的开发目录就OK了。
当然,还有一种方法就是不改变默认目录,只是在var/www下建立一个到你的目录的链接。比如你的目录在/home/username/phptest,那么你只要
1 | sudo ln -s/home/username/phptest /var/www/phptest |
这样你就可以通过http://localhost/phptest访问你的工作目录了。
3、配置中常用命令
重启apache
1 | sudo /etc/init.d/apache2 restart |
错误
Apache2启动失败
在安装完成后就会显示这错误。
1 | sudo vim /etc/apache2/apache2.conf |
最后加入一句: ServerName localhost:80
找不到PHP7.0
Couldn't find any package by regex 'php-7.0'
更新包源:
1 | sudo apt-add-repository ppa:ondrej/php |
端口被占用
Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
- 用
netstat -nlp |grep :80
命令看看有什么进程占用了80端口 - 例如Nginx,用
pkill -9 nginx
杀死进程 - 再次启动Apache
启动失败
Segmentation fault
``Action ‘start’ failed.`
是因为装了多个PHP……彻底卸载PHP,重装即可。
其他教程
搭建
sudo apt-get install apache2
sudo apt-get install php7.0
php -v 查看PHP是否安装成功
sudo apt-get install libapache2-mod-php7.0
cd /var/www/html 切换到apache项目目录下, 新建文件:sudo vim test.php
//vim显示行号::set nu
sudo apt-get install mysql-server mysql-client
//mysql设置密码 用户名root
//mysql -V 查看安装的版本信息
安装php的mysql插件:sudo apt-get install php7.0-mysql
安装一些常用的php扩展;sudo apt-get install php7.0-gd php7.0-mbstring php7.0-xml
安装composer:sudo apt-get install composer
博客来源:https://blog.csdn.net/u010071211/article/details/79511928
彻底卸载PHP7
一、删除php的相关包及配置
1 | sudo apt-get autoremove php7* |
二、删除关联
1 | sudo find /etc -name "*php*" |xargs rm -rf |
三、清除dept列表
1 | sudo apt purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "` |
四、检查是否卸载干净(无返回就是卸载完成)
1 | dpkg -l | grep php7.0 |
移动上传的文件失败
move_upload_file
权限问题
/tmp
的权限是drwxrwxrwx
,而我的/var/www/html
权限为drwxr-xr-x
修改所在文件夹的权限:
1 | chmod -R 777 /home |