Linux下的XAMPP基本配置技巧(设置虚拟主机、添加FTP账户等)
xampp安装好之后就只有一个默认站点及一个默认nobody的ftp账户,这显然不符合我们平时的需求了,那么下面就来讲一下如何设置并管理多个虚拟主机及ftp账户了,至于xampp的安装不在此讨论范围,读者可自行参阅官网的相关说明。
1、首先讲一下ftp账户的配置:
xampp采用的是proftpd服务端,这个不像我们Win环境下常用的Serv-U,用户帐户不是在服务端工具里面进行配置,而是在linux系统帐户里面配置的。因此我们可以使用命令:
groupadd ftpusers
先在系统中创建一个名称为ftpusers的用户组,这里的名称可以随便设置,主要是为了区分ftp帐户与系统其他类型的帐户所以我这里就命名为ftpusers,然后在这个组里面添加一个用户:
useradd -d /opt/lampp/www/site1 -g ftpusers -s /sbin/nologin site1ftp
第一个参数-d表示用户home目录,其中/opt/lampp/www/这个路径必须是存在的,而site1则是在该命令执行时自动创建的。第二 个参数-g表示此用户隶属于哪个用户组,第三个参数-s表示此用户的shell环境,为安全起见我们应该设置为一个无权限的路径。最后一个参数才是此帐户 的登录名称,我这里是site1ftp。
创建好之后我们就要为该帐户设置一个密码了:
passwd site1ftp
执行该命令后按提示输入两次密码即可完成帐户site1ftp的密码设置了。
接下来我们设置一下帐户home目录的权限:
chmod -R 777 /opt/lampp/www/site1
至此,ftp帐户的添加算是完成了,顺便提示一下,删除帐户的命令是userdel,修改帐户的命令是usermod,存储帐户的文件路径为/etc/passwd。
另外,为安全起见,我们应该在proftpd的服务配置文件(一般路径是/opt/lampp/etc/proftpd.conf)中修改一下 DefaultRoot为ftpusers,将ftpusers组里面的用户访问范围限制在其home目录。也可以把DefaultRoot设为~(键盘 左上角的那个符号),这样表示所有的组里面的用户都有这个限制了。如果要单独设置两个组或更多的组你必须另起一行或多行,说明如下:
DefaultRoot ftpusers #限制ftpusers组里面的用户
DefaultRoot ~ #限制所有组里面的用户
DefaultRoot ftpusers
DefaultRoot nobody #限制ftpusers组及nobody组里面的用户
DefaultRoot ftpusers,nobody #限制既隶属于ftpusers组同时也隶属于nobody组里面的用户
对了,还差一个步骤,应该在proftpd配置文件中对ftp目录添加可重写的权限,如下:
<Directory /opt/lampp/www/*>
AllowOverwrite on
</Directory>
否则会出现ftp上传文件时无法覆盖同名文件的问题。
2、然后我们再讲一下虚拟主机的配置
先执行:
cat /opt/lampp/etc/httpd.conf
查看一下xampp的apache配置文件,我们发现其中有一行:
#Include etc/extra/httpd-vhosts.conf
看来,xampp为我们准备了一个专用于配置虚拟主机的文件了,去掉#号以删除其注释,然后编辑/opt/lampp/etc/extra /httpd-vhosts.conf文件,此文件中xampp为我们创建了两个虚拟主机的示例,我们把这两个示例注释掉,然后添加我们自己需要的虚拟主 机,例如:
<VirtualHost *:80>
DocumentRoot /opt/lampp/www/site1
ServerName blog.ewebe.net
</VirtualHost>
DocumentRoot表示虚拟主机对应的路径,即网站目录,ServerName表示虚拟主机的访问地址,类似IIS中的主机头值。
至此,虚拟主机的设置也算是完成了。
最后我们需要在apache配置文件/opt/lampp/etc/httpd.conf中添加一下网站目录的访问权限。
<Directory "/opt/lampp/www/site1">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
这里可以将目录路径/opt/lampp/www/site1改为/opt/lampp/www,为以后建立更多的虚拟主机如site2、site3……等等做准备。
Linux下的XAMPP基本配置技巧(设置虚拟主机、添加FTP账户等)的更多相关文章
- nginx配置多个虚拟主机vhost
在nginx下配置虚拟主机vhost非常方便.主要在nginx的配置文件nginx.conf中添加一个server即可 比如我想配置两个虚拟主机,通过域名linux.com和linux2.com访问, ...
- ***linux下安装xampp,XAMPP目录结构(阿里云安装xampp)
XAMPP目录结构 重要的文件和目录 文件/目录 用途 /opt/lampp/bin/ XAMPP 命令库.例如 /opt/lampp/bin ...
- Linux下的Apache和PHP安全设置,如何开启PHP的安全模式
Linux下的Apache和PHP安全设置 PHP安全模式开启,PHP5.3将不再有安全模式. (1) safe_mode:以安全模式运行php; 在php.ini文件中使用如下 safe_mode ...
- Linux下Kafka单机安装配置方法(图文)
Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了普通消息系统的功能,但具有自己独特的设计.这个独特的设计是什么样的呢 介绍 Kafka是一个分布式的.可分区的.可复制的消息系统.它提供了 ...
- linux下Java环境的配置
linux下Java环境的配置 现在用linux的朋友越来越多了,前几天就有两个朋友问我linux下怎么配置java环境,我想还有很多朋友想了解学习这方面的东西,就写一个完全一点的linux java ...
- linux 下安装jdk及配置jdk环境图解
linux 下安装jdk及配置jdk环境图解 一:先检測是否已安装了JDK 运行命令: # rpm -qa|grep jdk 或 # rpm -q jdk 或 #find / -name j ...
- Linux下SVN服务器搭建配置
Linux下SVN服务器搭建配置 1.SVN服务安装 yum install subversion 2.创建SVN代码仓库 mkdir /data/svn svnadmin create /data/ ...
- linux下WEB服务器安装、配置VSFTP
转载 http://www.oicto.com/centos-vsftp/?tdsourcetag=s_pcqq_aiomsg linux下WEB服务器安装.配置VSFTP 由 admin · 发布 ...
- Linux 下 Memcached 缓存服务器安装配置
Linux 下 Memcached 缓存服务器安装配置 [日期:2011-08-06] 来源:Linux社区 作者:Linux [字体:大 中 小] [安装Memcache服务器端]我目前的平台 ...
随机推荐
- <<、|=、&的小例子
1. << 移位符 0x1 << 1 表示向左移1位 0x1二进制为:0001 左移1位:0010 效果: 2. | 按位或运算, & 按位与运算 enum STAU ...
- Linux-HA实战(2)— TFS Nameserver HA之虚拟IP
对TFS的Nameserver做机器级别的HA通过虚拟IP机制就可以了,只需要一个Heartbeat就可以搞定,下面简单说下步骤. 操作系统:CentOS 6.4 x86_64 Heartbeat: ...
- e774. 创建JList组件
By default, a list allows more than one item to be selected. Also, the selected items need not be co ...
- e565. 关闭的时候隐藏窗口
By default, when the close button on a frame is clicked, nothing happens. This example shows how to ...
- iText操作PDF读取JPEG图片ArrayIndexOutOfBoundsException异常
iText版本:itextpdf-5.5.1.jar 问题描述 读取本地JPEG图片文件的代码: com.itextpdf.text.Image image = com.itextpdf.text.I ...
- Idea配置CheckStyle
1.安装CheckStyle 2.配置idea_checks.xml 3.启用CheckStyle idea_checks.xml: <?xml version="1.0"? ...
- 前端图片压缩上传(纯js的质量压缩,非长宽压缩)
此demo为大于1M对图片进行压缩上传 若小于1M则原图上传,可以根据自己实际需求更改. demo源码如下: <!DOCTYPE html> <html> <head&g ...
- 关于js中namespace命名空间模式
命名空间有助于减少程序中所需要的全局变量的数量,并且同时有助于避免命名冲突或过长的名字前缀. 关于命名空间的例子: /** * 创建全局对象MYAPP * @module MYAPP * @title ...
- [转]Python多线程与多线程中join()的用法
https://www.cnblogs.com/cnkai/p/7504980.html Python多线程与多进程中join()方法的效果是相同的. 下面仅以多线程为例: 首先需要明确几个概念: 知 ...
- 【Ubuntu】录屏软件
http://www.leesven.com/2378.html sudo apt-get install kazam