零基础XAMPP for Linux虚拟机建站教(笔)程(记)

之所以写零基础是因为自己确实从零开始摸索、踩坑,严格意义上来说仅仅作为记录自己操作流程的一个笔记,并没有拔高到教程程度。

XAMPP一般用作开发环境,或供学习之用;在Windows系统下使用比较简单,且网上教程很多,而Linux下的教程则很少或不全;这里只记录全新安装虚拟机Linux系统下的建站步骤,且不涉及前端代码与PHP方面。

用到的软件:

1)VMware workstation 12.0.0;

2)CentOS 6.4 镜像;

3)XAMPP for Linux;

4)XShell 4;

5)EMS SQL Manager。

操作步骤:

一、虚拟机Linux安装

1.VMware安装略过,无难度。

2.打开VMware->创建新的虚拟机->选择“典型”,下一步->选择“稍后安装操作系统”,下一步->选择“Linux”以及版本“CentOS 6.4”,下一步->选择安装路径,下一步 ->选择磁盘大小以及“拆分成多个文件”,下一步->选择“自定义硬件”,在弹窗里,将网络默认的NAT改为桥接,磁盘选择准备好的ISO镜像路径,关闭弹窗,点击完成。

3.在VMware标题栏选项卡选择“编辑”->“虚拟网络编辑器”->弹窗选择“更改设置”;此时VMnet0对应的VMnet信息框中,桥接模式的选择框中的值为“自动”,改为你的网卡->确定。

4.启动虚拟机,安装CentOS;安装过程中默认为Minimal安装,若第一次接触,可选择Desktop。

注:本文所有相关IP或网络的设定是基于局域网内虚拟机的情况,若有公网IP另当别论。

二、基础配置

1.之前网络选择的是桥接模式,即虚拟机与实体机同处一个网段,在终端中输入:

ifconfig

可查看IP,默认为自动获取,可以手动设置为固定值,在终端中输入:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

将BOOTPROTO等号右边的值改为static,继续添加:

DNS1=192.168.1.1
#注:根 据实际情况,比如你的实体机IP为192.168.1.159,则DNS为 192.168.1.1
IPADDR=192.168.1.155
#注:自己指定的IP地址,与实体机IP在同一网段
NETMASK=255.255.255.0
#注:子网掩码
GATEWAY=192.168.1.1
#注:同上,网关

保存关闭文件,重启查看是否生效。

2.若发现网络没有自动连接,仍旧打开1中的文件,修改ONBOOT的值为yes即可。

3.配置防火墙,开启80与3306端口,前者为web服务所用,后者为数据库所用;终端输入:

vi /etc/sysconfig/iptables

在-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT这条规则之后添加:

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
#注:允许80端口通过防火墙
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
#注:允许3306端口通过防火墙

保存关闭文件(注:若添加在配置文件最末尾会出错),终端输入:

/etc/init.d/iptables restart

重启防火墙使配置生效。

三、XAMPP安装与基础配置

1.在此之前先安装好XShell;点击新建建立SSH连接,主机为虚拟机IP地址;连接成功后,作基础设定,“文件”->“属性”->“终端”->“编码”->选择utf-8,若字号太小也可自行调大。

2.Ctrl+Alt+F打开文件传输窗口,将下好的XAMPP安装包上传,比如上传至/tmp文件夹。

3.进入tmp文件夹:

cd /tmp
chmod 777 xampp-linux-x64-1.8.3-5-installer.run
#注:输入头几个字母,按Tab自动补全
./xampp-linux-x64-1.8.3-5-installer.run

按提示安装完成,此时输入:

/opt/lampp/lampp start

可开启服务器。

4.在实体机的浏览器中,进入192.168.1.155/phpmyadmin会提示403错误,这是因为默认状态下只能在本地打开此网页,此时在XShell输入:

vi /opt/lampp/etc/extra/httpd-xampp.conf

找到"/opt/lampp/phpmyadmin">,将其对应的Require local改为

Require all granted

保存关闭文件(注:修改方式根据版本不同,有的老版直接将LocationMatch标签下的Require local注释掉即可,但新版会直接导致报错,因此首先尝试如此修改),输入:

/opt/lampp/lampp restart

重启服务器。

5.如无意外192.168.1.155/phpmyadmin已经可以在实体机中正常访问,为今后使用方便,将XAMPP设定为随系统启动,输入:

egrep :initdefault: /etc/inittab
#注:正则匹配,在/etc/inittab文件中查找形如:initdefault:的代码段

若安装系统时选择了Desktop,则搜索结果应为id:5:initdefault:;若想更改启动方式为命令行启动,可以进入/etc/inittab将id:5:initdefault:修改为id:3:initdefault:;此处假定已经改为3,输入:

cd /etc/rc.d/rc3.d
#注:若未改为3,将rc3写为rc5即可
ln -s /opt/lampp/lampp S99lampp
#注:此句添加XAMPP进入启动项

若想取消开机启动,S99lampp改为K01lampp即可。

6.开发页面时,只需将项目文件夹放入/opt/lampp/htdocs,比如项目文件夹test,入口页为index.html,那么在实体机中输入192.168.1.155/test/index.html即可访问。

另:涉及日志保存时,记得给日志文件夹添加写入权限;如将日志文件夹命名为Log,放在/opt/lampp下,进入目录,输入:

chmod -R a+w Log

即可。

四、MySQL基础配置

1.首先设定密码,输入:

/opt/lampp/bin/mysql -uroot -p

回车,默认无密码,再次按回车进入数据库,输入:

show databases;

可查看现有数据库,如登录数据库的用户信息就存在mysql数据库下的user表当中,输入:

use mysql;

选择数据库,输入:

select * from user;

可查看user表下的用户信息,可以发现root用户对应的密码均为空,输入:

update user set password=password(‘yourpassword‘) where user=‘root‘;

即可将用户名为root的用户密码均改为你设定的密码,注意一定要使用password(‘‘)。

2.此时还不用退出数据库,输入:

delete from user where user=‘‘;

删除匿名用户;若没有这一步,进行下一步之后,会出现数据库访问频频报错的情况;此时设定好密码的root用户无法正常登录,用匿名用户可以登录(其实是默认匹配到了匿名用户登录),却找不到mysql数据库(没有权限),因此统一删除匿名用户。

若没有删除,且数据库已经无法访问,提示“ERROR 1045 (28000): Access denied …”可以尝试用语句

/opt/lampp/bin/mysql -h 192.168.1.155 -u root -p

来登录,再对数据库进行修改。

3.接着,输入:

update user set host=‘%‘ where user=‘root‘ and host=‘localhost‘;

设定root用户可以远程访问,最后输入:

flush privileges;

退出数据库。

4.此时会发现192.168.1.155/phpmyadmin无法访问了,输入:

vi /opt/lampp/phpmyadmin/config.inc.php

找到$cfg[‘Servers‘][$i][‘password‘] = ‘‘;将刚才设定的密码填入‘‘中,保存关闭文件,输入:

/opt/lampp/lampp restart

重启服务器,192.168.1.155/phpmyadmin访问正常。

5.到这里数据库还不能正常使用,因为默认的编码格式并非utf8,此时添加数据库信息会导致中文乱码,登录数据库,输入:

show variables like ‘%char%‘;

可查看当前编码格式,发现character_set_database和character_set_server对应的值为latin1,输入:

set character_set_database=utf8;
set character_set_server=utf8;

可在本次登录中将编码格式改为utf8,即退出数据库后失效;若想保存为默认设定,输入:

vi /opt/lampp/etc/my.cnf

在[client]和[mysql]下添加:

default-character-set = utf8

在[mysqld]下添加:

character-set-server = utf8

保存关闭文件,重启服务器,此时数据库编码设定完毕。

五、MySQL基本操作

1.在第四步当中,XAMPP自带的数据库管理工具已经可以使用,浏览器进入192.168.1.155/phpmyadmin即可。关于phpmyadmin的操作不谈,这里以EMS SQL Manager为例。

2.安装好软件后,打开“Database”选项卡->“Register Host”->填写基本信息后下一步->选择具体的database到右侧框内->完成。

3.顺利的话左边栏将显示你的主机IP,点击加号可展开主机下你所添加的database,双击连接,第一个子项tables即为此database下的表单。

4.右键tables可新建表单,在右侧的选项卡中,properties可设定表单名及存储引擎;fields可编辑表单结构,添加字段;data可添加或修改表单数据;所有操作都要记得点compile保存更改。

5.按F12,可以直接运行SQL语句。

六、XAMPP安全与优化配置

1.若作为生产环境,还需进行进一步设置,输入:

vi /opt/lampp/etc/httpd.conf

找到"/opt/lampp/htdocs">,添加或修改为:

Options FollowSymLinks
AllowOverride None

意在使htdocs下的目录对外不可访问。

2.修改PHP报错等级,输入:

vi /opt/lampp/etc/php.ini

利用“/”全文搜索关键字,改为:

error_reporting = E_ALL & ~E_DEPRECATED
display_errors=Off
display_startup_errors=Off

3.关闭FTP服务,输入:

/opt/lampp/lampp stopftp

即可,下次重启服务器时将不会启动FTP服务。

4.之前开发的时候允许phpmyadmin的远程访问,这里记得关闭,将/opt/lampp/etc/extra/httpd-xampp.conf文件修改为原样即可。

5.修改MySQL高并发优化配置(myisam为例),输入:

vi /opt/lampp/etc/my.cnf

其中:

key_buffer = 16M 修改为 key_buffer_size = 32M
max_allowed_packet = 1M 修改为 max_allowed_packet = 32M
read_buffer_size = 256K 修改为 read_buffer_size = 4M
添加 max_connections = 3000

设置项根据实际需求修改。

(本文结束)

时间: 2024-10-16 05:19:08

零基础XAMPP for Linux虚拟机建站教(笔)程(记)的相关文章

hadoop零基础系列之一:虚拟机下的Linux集群构建

经过了近两年的hadoop学习和使用,有必要把hadoop的学习进行一个总结,最好的方式就是以博客的方式来总结,既重新梳理以前的学习也可以和同行沟通交流,从今天开始将陆续推出hadoop零基础系列的文章, 当然总结过程中会参考相关方面的资料书,有些例子会直接来源与网络和书籍,我会在文中列出引用 考虑到初学者都是在单机的环境进行学习,所以我们采用虚拟机的方式来构建Linux集群,本篇我们先把Linux集群给构建起来,主机系统本人采用的系统是win7 旗舰版 1.虚拟机软件VMware 采用的VMw

Linux服务器建站数据备份自动上传FTP服务器

现在很多朋友通过购买云服务器建站,有时候由于服务器系统的问题,没有及时做好网站数据的备份而导致数据的丢失.如果你手中还有其他云服务器或者FTP服务器可以实现自动备份上传的功能.本文仅仅是做一个备份数据想法. (1)网站数据备份 将网站数据/var/www/vhost/www.51cto.com和/var/www/vhost/www.baidu.com分别备份到: /Data/code-backup/www.51cto.com和/Data/code-backup/www.baidu.com下. [

零基础到精通Linux,从这篇文章开始

2018年想做Linux运维的人应该如何学习才能快速精通Linux? Linux入门这么简单,为什么很多人学不会? 想要成为一个合格的运维工程师,到底怎么才能从零开始精通Linux? 作为一个运维小白,你是否也有这样的困惑? 正好在最近,看到了一篇不错的资料,其中对于Linux入门学习的描述极其详尽,因此特别摘抄其中段落,制作成思维导图分享给大家. 教程内容: Linux入门首先要分为5个阶段,各阶段从前到后技术实力依次增加,相应的也更加能够符合企业的用人需求.为了让大家对于这5个阶段的能力水平

1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_3 表格标签<table>

HTML <table> 标签 定义和用法 <table> 标签定义 HTML 表格. 简单的 HTML 表格由 table 元素以及一个或多个 tr.th 或 td 元素组成. tr 元素定义表格行,th 元素定义表头,td 元素定义表格单元. 更复杂的 HTML 表格也可能包括 caption.col.colgroup.thead.tfoot 以及 tbody 元素. 1 <!DOCTYPE html> 2 <html lang="en"&

1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_2 html列表的用法

0.无序列表 1.有序列表 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <body> 8 <!--这是一个注释--> 9 <!--无序列表--> 10 <ul> 1

1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_4 简单表格应用&lt;table&gt;

模仿:华为手机大全_华为智能手机_华为商城.html https://www.vmall.com/list-36 HTML <table> 标签 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 </head> 7 <b

1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_8 css 3种样式引用方法&lt;link&gt;&lt;style&gt;

0.行内样式添加CSS <p style="color: red;">这是一个段落</p> 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>css</title> 6 </head> 7 <body> 8 <p&

1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_12 css边框

复合写法: border: 2px solid red; 分开写法: border-color: red; border-bottom-color: blue; border-bottom-style: dotted; border-bottom-width: 5px; border-left-color: yellow; border-left-style: solid; border-left-width: 6px; border-right-color: green; border-rig

1、HTML+DIV+CSS零基础快速入门到制作企业站视频课程_11 css字体样式

复合写法: font: italic bold 20px "微软雅黑" 分开写法: font-family: "微软雅黑"; font-size: 20px; font-size: 2em; 1em=16px font-style: italic; font-style: normal; font-weight: bold; font-weight: normal; 原文地址:https://www.cnblogs.com/denggelin/p/8994214.h