Ubuntu 16.04搭建LAMP开发环境
基本设置
1.配置网络环境
管理员给分配了一个静态IP,所以还需要进一步配置网络环境
配置DNS:右上角网络连接->编辑链接->有线连接1->IPv4设置->DNS服务器:202.112.80.106->保存
登陆网关:对于校园网用户来说,登陆网关才能访问外网
测试:
ping www.baidu.com
2.设置root密码
sudo passwd
切换到root用户:
su
或su -
或su root
切换到普通用户:
su 用户名
或logout
3.更新源
sudo apt-get update
源保存的文件为:
/etc/apt/sources.list
安装常用软件
1.SSH
sudo apt-get install openssh-server
查看状态:
service ssh status/start/stop/restart
或:
/etc/init.d/ssh status/start/stop/retsrt
实际上,service命令就是执行/etc/init.d脚本,二者功能是一样的
2.Vim
sudo apt-get install vim
3.Tree
sudo apt-get install tree
4.Git
sudo apt-get install git
搭建LAMP
1.安装Apache
sudo apt-get install apache2
测试: 浏览器访问
http://Ubuntu的IP
,出现It Works!网页。查看状态:
service apache2 status/start/stop/restart
Web目录:
/var/www
安装目录:
/etc/apache2/
全局配置:
/etc/apache2/apache2.conf
监听端口:
/etc/apache2/ports.conf
虚拟主机:
/etc/apache2/sites-enabled/000-default.conf
2.安装MySQL
sudo apt-get install mysql-server mysql-client
测试:
mysql -u root -p
查看状态:
service mysql status/start/stop/retart
查看监听端口的情况:
netstat -tunpl
或netstat -tap
3.安装PHP
sudo apt-get install php7.0
测试:
php7.0 -v
4.安装其他模块
sudo apt-get install libapache2-mod-php7.0
sudo apt-get install php7.0-mysql
重启服务
service apache2 restart
service mysql restart
测试Apache能否解析PHP
vim /var/www/html/phpinfo.php
文件中写:
<?php echo phpinfo();?>
浏览器访问:
http://ubuntu地址/phpinfo.php
,出现PHP Version网页
5.修改权限
sudo chmod 777 /var/www
6.安装phpMyAdmin
sudo apt-get install phpmyadmin
安装:选择apache2,点击确定。下一步选择是要配置数据库,并输入密码。
创建phpMyAdmin快捷方式:
sudo ln -s /usr/share/phpmyadmin /var/www/html
启用Apache
mod_rewrite
模块:sudo a2enmod rewrite
重启服务:
service php7.0-fpm restart
service apache2 restart
测试:浏览器访问:
http://ubuntu地址/phpmyadmin
7.配置Apache
vim /etc/apache2/apache2.conf
添加:
AddType application/x-httpd-php .php .htm .html
AddDefaultCharset UTF-8
重启Apache服务
安装python包
1.pip
sudo apt-get install python-pip
2.Django
pip install django
测试:
import django
##3.MySQL-pythonpip install MySQL-python
测试:
import MySQLdb
常见问题
1.Secure SSH Client连接出错
错误:algorithm negotiation failed
解决:
修改sshd的配置文件:
vim /etc/ssh/sshd_config
在配置文件中添加:
Ciphers aes128-cbc,aes192-cbc,aes256-cbc,aes128-ctr,aes192-ctr,aes256-ctr,3des-cbc,arcfour128,arcfour256,arcfour,blowfish-cbc,cast128-cbc
MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160,hmac-sha1-96,hmac-md5-96
KexAlgorithms diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group1-sha1,curve25519-sha256@libssh.org
重启sshd服务:
service ssh restart
2.Xshell或Xftp中文乱码
Xshell:文件->属性->终端->编码->UTF-8>
Xftp:文件->属性->选项->选中使用UTF-8编码
3.安装MySQL出错
错误:
下列软件包有未满足的依赖关系:
mysql-client : 依赖: mysql-client-5.5 但是它将不会被安装
mysql-server : 依赖: mysql-server-5.5 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
解决:两种解决方法
使用Ubuntu自带的下载源,不要使用其他源(如网易)
手动安装
下载MySQL:
http://dev.mysql.com/downloads/mysql/
使用FTP工具上传到Ubuntu
解压:
tar -xvf mysql-server_5.7.13-1ubuntu16.04_i386.deb-bundle.tar
安装:
sudo dpkg -i libmysqlclient20_5.7.15-1ubuntu16.04_amd64.deb libmysqlclient-dev_5.7.15-1ubuntu16.04_amd64.deb libmysqld-dev_5.7.15-1ubuntu16.04_amd64.deb mysql-common_5.7.15-1ubuntu16.04_amd64.deb mysql-community-source_5.7.15-1ubuntu16.04_amd64.deb mysql-community-client_5.7.15-1ubuntu16.04_amd64.deb mysql-client_5.7.15-1ubuntu16.04_amd64.deb mysql-community-server_5.7.15-1ubuntu16.04_amd64.deb mysql-server_5.7.15-1ubuntu16.04_amd64.deb
4.安装pip出错
解决:可改用如下命令:
sudo apt-get install python-pip python-dev build-essential
sudo pip install --upgrade pip
sudo pip install --upgrade virtualenv
5.安装Django超时报错
解决
设置超时时间:
sudo pip install django --default-timeout 100
或者使用其他下载源:
pip install web.py -i
6.安装MySQL-python报错
错误:
EnvironmentError: mysql_config not found
解决:
sudo apt-get install libmysqld-dev
安装MySQL-python:
pip install MySQL-python
7.更新Python库
pip install --upgrade 库名
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-10/136327.htm
Ubuntu 16.04搭建LAMP开发环境的更多相关文章
- Ubuntu 16.04 搭建LAMP服务器环境流程
http://www.linuxidc.com/Linux/2016-09/135629.htm [安装mysql时 只需安装 mysql-server无需安装mysql-client] mysql ...
- Ubuntu 16.04 搭建Android开发环境
1.Installing Java sudo add-apt-repository ppa:webupd8team/java sudo apt-get update sudo apt-get inst ...
- 【转】64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解
64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解,开发裸机环境之前需要先搭建其开发环境,毕竟工欲善其事必先利其器嘛. 安装步骤 1.准备工具安装目录 下载 ar ...
- Ubuntu16.04搭建LAMP开发环境
Ubuntu16.04搭建LAMP开发环境 虚拟机上安装好Ubuntu16.04后,是一台空白的Ubuntu.我的目的是搭建LAMP环境,顺便搭一个Python Django环境. 基本设置 1.配置 ...
- Ubuntu 12.04 搭建Android开发环境
Ubuntu 12.04 搭建Android开发环境 2013/7/29 Linux环境下搭建Android开发环境 大部分开发人员可能都在Windows下做开发,可能是感觉在Windows下比较方便 ...
- [eShopOnContainers 学习系列] - 03 - 在远程 Ubuntu 16.04 上配置开发环境
直接把 md 粘出来了,博客园的富文本编辑器换成 markdown,没啥效果呀 ,先凑合吧.实在不行换地方 # 在远程 Ubuntu 16.04 上配置开发环境 ## 零.因 为什么要用这么麻烦的 ...
- ubuntu 16.04 android studio 开发环境搭建
安装步骤: 1. 安装 Java developer kit 2.安装 Android developer kit 3.安装 Android studio 4.真机调试 第一次用Linux,命令基本不 ...
- Ubuntu 16.04 系统基础开发环境搭建
1.安装 Git sudo apt-get update sudo apt-get install git Do you want to continue? [Y/n] Y git --version ...
- Ubuntu 16.04 以太坊开发环境搭建
今天我们来一步一步从搭建以太坊智能合约开发环境. Ubuntu16.04 安装ubuntu16.04.下载链接 //先update一下(或者换国内源再update) sudo apt-get upda ...
随机推荐
- (四)Lua脚本语言入门(数组遍历)
这篇文章就当成铺垫型的文章,写着写着发现有好多想写的,,关于C#与Java,当然作为铺垫肯定与Lua的下部分介绍有关..... 对于"泛型",先看C#中"泛型" ...
- oracle 在存储过程或函数中得到异常sql
BEGIN SQLSTR := 'UPDATE TBL ...'; EXECUTE IMMEDIATE SQLSTR; EXCEPTION WHEN OTHERS INSERT INTO LOG_TA ...
- js 按指定属性给对象数组排序(json数组)
有时,我们有一个json对象的数组集合,如何按指定对象属性来进行排序? //fieldArr为一个json对象数组 var fieldArr = fieldArr.sort(compare(" ...
- 【CobaltStrike】CobaltStrike简介与使用
CobaltStrike简介与使用 0x00 简介 1. 什么是CobaltStrike?可以用来做什么? CobatStrike是一款基于java编写的全平台多方协同后渗透攻击框架.CobaltSt ...
- 2017-2018-2 《网络对抗技术》 20155302 第二周 Exp1 PC平台逆向破解(5)M
2017-2018-2 <网络对抗技术> 20155302 第二周 Exp1 PC平台逆向破解(5)M 1-实践目标 1.1-实践介绍 本次实践的对象是一个名为pwn1的linux可执行文 ...
- 20155313 杨瀚 《网络对抗技术》实验九 Web安全基础
20155313 杨瀚 <网络对抗技术>实验九 Web安全基础 一.实验目的 本实践的目标理解常用网络攻击技术的基本原理.Webgoat实践下相关实验. 二.基础问题回答 1.SQL注入攻 ...
- 【WPF】如何使用wpf实现屏幕最前端的绘图?
原文:[WPF]如何使用wpf实现屏幕最前端的绘图? 引言 在知乎上面看到如何使用wpf实现屏幕最前端的绘图? 这么一个问题,觉得全屏弹幕很有趣,所以把它实现了. 实现 界面设置很简单,Window界 ...
- Dynamics 365 支持使用Web Api 通过名称来检索元数据
关键检索元数据我在之前的一篇博文中稍有提及,当时是为了取实体的picklist字段的属性,但当时的版本只支持通过metadataid检索,而在365中又增加了名称的检索,方便了很多. 本篇依旧用之前博 ...
- 异常 java.lang.IllegalArgumentException: Result Maps collection already contains value
这是因为用了一次以上(多次)mbg导致sql映射文件堆积导致的异常,删除对应的sql映射文件,然后重新生成即可. Caused by: java.lang.IllegalArgumentExcepti ...
- [LOJ#6066]. 「2017 山东一轮集训 Day3」第二题[二分+括号序列+hash]
题意 题目链接 分析 首先二分,假设二分的答案为 \(mid\),然后考虑利用括号序列来表示树的形态. 点 \(u\) 的 \(k-\) 子树的括号序列表示实际上是刨去了 \(u\) 子树内若干个与 ...