win8+opecv2.4环境搭建

一、依赖环境
win8.1_enterpraisex64
codeblocks16.01
二、安装opencv
1.首先至opencv官网下载发行版
下载地址:http://opencv.org/releases.html
2.将下载后文件解压至某文件夹,比如D:/TEMP/OPENCV
三、启动codeblocks支持
1.在codebolcks里面新建一个控制台项目:
2.右击项目名称,选择构建选项,按照以下配置:

3.然后设置链接器,选择导入所有的库文件:


四、启动测试:
#include "cv.h"
#include "highgui.h"

int main()
{
IplImage* img = cvLoadImage("test.jpg");
cvNamedWindow( "test", 0 );
cvShowImage("test", img);
cvWaitKey(0);
cvReleaseImage( &img );
cvDestroyWindow( "test" );
return 0;
}

五、错误说明
1.|fatal error: opencv2/core/core_c.h: No such file or directory|
解决方法:检查搜索目录是否设置正确
2.无法启动此程序,因为计算机中丢失opencv_core*d.dll
解决方法:在环境变量中加入:
D:\TEMP\opencv\build\x64\vc14\bin
D:\TEMP\opencv\build\x86\vc14\bin

炫龙笔记本深度学习基本环境搭建(ubuntu16.04+GTX1060+CAFE+TENSORFLOW)

一、安装环境说明
1.ubuntu 16.04 x64 (常规安装 ,非GPT+UEFI,UEFI出了很多问题,这里不建议用,如果你有好的方法,可以推荐)
2.硬件配置 I7 6700HQ /GTX1060 6G /8G DDR4
一般来讲稍微大一点的模型都要6G左右显存,所以当时就买了这款,刚好能够带起来。
3.学习环境(caffe + tensorflow gpu 1.2.1 +python2.7 + cuda_8.0.61 + cudnn-8.0-linux-x64-v5.1 )
二、系统内的一些设定(可选,也可直接跳过):
1.挂载ntfs fat32分区
(如果dpkg发生问题,则重建文件:
sudo rm /var/lib/lists/lock

sudo rm /var/lib/dpkg/lock
sudo apt-get update
sudo apt-get upgrade

)
①挂载ntfs分区
挂载ntfs 需要两个软件,ntfs-3g 和 ntfs-config,其中ntfs-3g 在ubuntu16.04中已经有了,现在只需要安装ntfs-config即可: sudo apt-get install ntfs-config
sudo ntfs-config
打开ntfs-config的配置程序,选择挂载位置后,在外部设备写支持和内部设备写支持上打钩
②挂载fat32分区
使用sudo fdisk -l 查看你的fat32分区位置
这里我的是 /dev/sda6
修改/etc/fstab
sudo gedit /etc/fstab
加上这一句:
/dev/sda4 /media/f vfat user,auto,umask=002,iocharset=utf8 defaults 0 0
2.安装teamviewer
官网下载,有一个图标没有权限问题:
sudo nautilus
在这个界面中通过“计算机”进入xxx.desktop所在文件夹,文件xxx.desktop上点击右键,选择属性,在属性窗口中点击权限选项卡,选择所有者为root,勾选允许作为程序执行文件,点击关闭。
重启,登录,添加设备信任。
3.安装shadowsocks并实现全局代理
①升级python到3.x
sudo apt-get
python3
sudo ln -s /usr/bin/python3.5 /usr/bin/python

通过优先级的方法切换python2 和 3
sudo update-alternatives --install /usr/bin/Python python /usr/bin/python2 100
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150
sudo update-alternatives --config python

通过数字来选取你需要的python版本
②安装shadowsocks-qt5(也可以用shadowsocks,不过这里觉得qt5更方便)
sudo add-apt-repository ppa:hzwhuang/ss-qt5
sudo apt-get update
sudo apt-get install shadowsocks-qt5

③配置PAC全局代理
安装GenPAC(GenPAC 是基于gfwlist的代理自动配置(Proxy Auto-config)文件生成工具,支持自定义规则。)
可能需要先安装pip
sudo apt-get install python-pip python-dev build-essential
(注意直接安装的pip需要对应python2.x)
升级到pip3
sudo apt-get install python3-pip
安装genpac
sudo pip install genpac
pip install --upgrade genpac

调用在线 gfwlist 列表生成本地 autoproxy.pac 文件
cd /home/gx/Desktop/workspace/setup

genpac -p "SOCKS5 127.0.0.1:1080" --gfwlist-proxy="SOCKS5 127.0.0.1:1080" --output="autoproxy.pac" --gfwlist-url="https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt" --user-rule-from="user-rules.txt"
或者
sudo genpac --proxy="SOCKS5 127.0.0.1:1080" -o user-rules.txt --gfwlist-url="https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt"
(出现ImportError: No module named ‘ConfigParser’ ,
这是由于在 Python 3.x 版本后,ConfigParser.py 已经更名为 configparser.py !
找到文件 configparser ,更名为旧版本的名称 ConfigParser)
sudo cp /usr/lib/python3.5/configparser.py /usr/lib/python3.5/ConfigParser.py

④设置全局代理
点击:System settings > Network > Network Proxy ;
选择 Method 为 Automatic
设置 Configuration URL 为 autoproxy.pac 文件的路径
file:///home/gx/Desktop/workspace/setup/user-rules.txt

6.安装chrome
sudo wget https://repo.fdzh.org/chrome/google-chrome.list -P /etc/apt/sources.list.d/
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt-get update
sudo apt-get install google-chrome-stable

三、安装
1.安装英伟达显卡驱动程序
(ubuntu 16.04 可以直接在 软件和更新→附加驱动里面更改)
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-375
sudo apt-get install mesa-common-dev
sudo apt-get install freeglut3-dev

(这里我的显卡最新驱动是375.66,所以安装375版本)
http://blog.csdn.net/WoPawn/article/details/52302164

2.安装cuda
①从nvidia官网下载cuda8.0.61安装包和升级包
cuda_8.0.61_375.26_linux.run 和 cuda_8.0.61.2_linux.run
②安装

sh cuda_8.0.61_375.26_linux.run --override

(选择:
启动安装程序,一直按空格到最后,输入accept接受条款
输入n不安装nvidia图像驱动,之前已经安装过了
输入y安装cuda 8.0工具
回车确认cuda默认安装路径:/usr/local/cuda-8.0
输入y用sudo权限运行安装,输入密码
输入y或者n安装或者不安装指向/usr/local/cuda的符号链接
输入y安装CUDA 8.0 Samples,以便后面测试
回车确认CUDA 8.0 Samples默认安装路

安装升级包(过程和前边一样)
sh cuda_8.0.61_375.26_linux.run –override

③安装完成后显示
Logfile is /home/tmp/cuda_install_8310.log

3.安装cudnn
①在英伟达官网注册为开发者,下载cudnn,这里使用5.1
(由于tensorflow 1.21 不支持6.0版本,前面安装6.0发红色呢过诸多错误)
文件名为cudnn-8.0-linux-x64-v5.1.tgz
②安装cudnn
tar zxvf cudnn-8.0-linux-x64-v5.1.tgz
cd cuda/include/
sudo cp cudnn.h /usr/local/cuda/include/ #复制头文件
cd ../lib64
sudo cp lib* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
#给所有用户增加读权限

③建立软链接
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5
sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so

设置环境变量
sudo gedit /etc/profile
在末尾加入
PATH=/usr/local/cuda/bin:$PATH
export PATH

保存后,创建链接文件
sudo gedit /etc/ld.so.conf.d/cuda.conf
增加下面一行
/usr/local/cuda/lib64
最后在终端输入sudo ldconfig使链接生效
(出现问题:
/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 不是符号连接
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 不是符号连接

解决方法:更名后重新建立符号链接:
sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.39 /usr/lib/nvidia-375/libEGL.so.1
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.39 /usr/lib32/nvidia-375/libEGL.so.1

)
sudo ldconfig
④测试cudn sample
打开CUDA 8.0 Samples默认安装路径,终端输入
cd /home/root/NVIDIA_CUDA-8.0_Samples (root是用户名)
sudo make all -j4 (由于我得到的cpu是i7 6700hq 只有四个真核 ,所以这里使用4核编译)

(出现“unsupported GNU version! gcc versions later than 5.3 are not supported!”的错误,这是由于GCC版本过高,在终端输入
cd /usr/local/cuda-8.0/include
sudo cp host_config.h host_config.h.bak
sudo gedit host_config.h

ctrl+f寻找有“5.3”的地方,只有一处,如下
# if __GNUC__ > 5 || (__GNUC__ == 5 && __GNUC_MINOR__ > 3)
#error — unsupported GNU version! gcc versions later than 5.3 are not supported!
将两个5改成6,即
#if __GNUC__ > 6 || (__GNUC__ == 6 && __GNUC_MINOR__ > 3)
cd /home/root/NVIDIA_CUDA-8.0_Samples (root是用户名)
sudo make all -j4 (由于我得到的cpu是i7 6700hq 只有四个真核 ,所以这里使用4核编译)

完成后继续向终端输入
cd bin/x86_64/linux/release
./deviceQuery

(完成之后文件setrequest/cuda_samples.txt 文件中)

4.安装caffe
①安装依赖包
sudo apt-get install build-essential #必要的编译工具依赖

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

②安装easy_install
wget --no-check-certificate https://bootstrap.pypa.io/ez_setup.py
sudo python ez_setup.py --insecure

③安装科学计算和python所需的部分库
sudo apt-get install libblas-dev liblapack-dev libatlas-base-dev gfortran python-numpy
④安装git
sudo apt-get install git
git clone https://github.com/BVLC/caffe.git

⑤安装caffe
cd /home/root/caffe
cp Makefile.config.example Makefile.config

gedit Makefile.config
将USE_CUDNN := 1取消注释,
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include后面打上一个空格,
然后添加/usr/include/hdf5/serial如果没有这一句可能会报一个找不到hdf5.h的错误

make all -j4
(make过程中出现找不到lhdf5_hl和lhdf5的错误,
解决方案:
在计算机中搜索libhdf5_serial.so.10.1.0,找到后右键点击打开项目位置
sudo su
find / -name libhdf5_serial.so.10.1.0
找到位置为:/usr/lib/x86_64-linux-gnu/libhdf5_serial.so.10.1.0

cd /usr/lib/x86_64-linux-gnu
sudo ln libhdf5_serial.so.10.1.0 libhdf5.so
sudo ln libhdf5_serial_hl.so.10.0.2 libhdf5_hl.so
sudo ldconfig
make clean

再次输入make all -j4重新编译

make test -j4
make runtest -j4
make pycaffe -j4
make pycaffe -j4
make distribute #生成发布安装包

测试python
cd /home/root/caffe/python
python
import caffe

(如果遇到错误:ImportError: No module named skimage.io
解决办法:

可能是我们没有安装所谓的skimage.io 模块,所以可以用以下的命令来安装:
easy_install scikit-image
或者
pip install scikit-image
)
(遇到错误:ImportError: No module named google.protobuf.internal
sudo pip install protobuf
)

5.用caffe测试mnist数据
①下载minist数据集
cd /home/root/caffe/data/mnist/
./get_mnist.sh
②mnist数据格式转换
cd /home/root/caffe/
./examples/mnist/create_mnist.sh

此时在/caffe/examples/mnist/目录下生成mnist_test_lmdb和mnist_train_lmdb两个LMDB格式的训练集和测试集
LeNet-5模型描述在/caffe/examples/mnist/lenet_train_test.prototxt
Solver配置文件在/caffe/examples/mnist/lenet_solver.prototxt
③训练mnist
cd /home/root/caffe/
./examples/mnist/train_lenet.sh

(测试结果保存在setrequest/test_caffe_mnist.txt)
6.安装tensorflow
(官方安装:https://www.tensorflow.org/install/install_linux)
由于CUDA环境前面已经安装完成,现在只需要安装tensorflow即可,
官方提供了四种安装途径,这里使用python pip 安装。
①安装Tensorflow
pip install tensorflow
pip install tensorflow-gpu

最后的提示应该是:Successfully installed tensorflow-gpu-1.2.1
②验证安装
运行hellotensorflow.py

python hellotensorflow.py

关于c++中字符数组向字符数组指针赋值的问题 error: incompatible types in assignment of ‘char*’ to ‘char [19]’|


const static int Len = 19;
char name[Len];
plorg::plorg(char * tag)
{
CI = 50;
name = tag ;
}

如上的操作将会造成报错:
||=== 构建文件: “无目标” 在 “无项目” 中 (编译器: 未知的) ===|
error: incompatible types in assignment of ‘char*’ to ‘char [19]’|
||=== 构建 失败: 1个错误, 1个警告 (0 分, 0 秒) ===|
解决方法:
这种转换在C++中是不被允许的,但是可以使用一个方法巧妙实现:
①在开头引用C的头文件string.h

#include

②使用其中功能strcpy()
修改如下

plorg::plorg(char * tag)
{
CI = 50;
//name = tag ;
strcpy(name,tag);
}

源程序参考:
https://github.com/ghostxiu/CplusplusPrimerPlus6thEditions/blob/master/Champter10/10.6.cc
及其依赖的头文件
https://github.com/ghostxiu/CplusplusPrimerPlus6thEditions/blob/master/Champter10/user_plorg.h

wordpress博客站点整站迁移

前面已经发过了wordpress的安装过程,可以看:

下面来说说整站迁移WordPress的步骤,以CENTOS6.X为例

一、登录原网站,备份原网站全部内容

使用SSH工具登录原网站SSH空间
定位FTP目录
假设我们的的网站在/opt/website/test.wolfmark.org

cd /opt/website/

将原网站内容打包:

tar cf test.wolfmark.org.tar.gz test.wolfmark.org

然后登陆ftp可以看到结果如下,将test.wolfmark.org.tar.gz保存到本地


二、备份mysql数据库(此处使用工具phpmyadmin)
phpmyadmin的安装方法见

https://x.wolfmark.org/x-select_2017-03-27_336.html

登陆后台以后,输入原来创建的数据库用户名和密码进入以后

点击导出,然后执行即可,把得到的sql文件保存下来

三、到新的服务器上传站点文件

可能需要开辟新文件,详见:

https://x.wolfmark.org/x-select_2017-03-27_363.html

然后用FTP工具连接新的空间,将第一步保存的压缩文件上传到FTP空间

随后使用linux命令解压缩:


tar -xf run.wolfmark.org.tar.gz

四、同步数据库文件
登录新空间的phpmyadmin,建立数据库后,直接导入刚才第二步下载的sql即可。

在ftp工具里面删除网站根目录下的wordpress数据库配置文件wp-config.php,然后在IE浏览器中输入网站域名访问,安装wordpress。

当然这个方法也可以用于其他CMS站点的迁移。

零基础建立wordpress博客(会打字就会建),并实现伪静态

作者和大多数 人一样,用了这么多年计算机,但还是个小白,这篇文章就来讲讲怎么建立自己的wordpress。其实DZ论坛以及一些CMS的方法都不尽相同,完全可以一通百通。

一、环境需求:

1.首先你需要一个空间(可以是虚拟空间(需支持php)、vps或者真实主机,如果是学生现在注册腾讯云主机和阿里云主机都很便宜,只是为了建站的话买个虚拟空间)。

我这边是在VPS(腾讯云主机)的环境下搭建的,当然虚拟主机也是可以的,如果是腾讯云主机,不会配置环境,可以参考:

2.其次你需要一个域名,可以是一级域名,二级域名,以及公网IP地址,如果是域名要将它指向你的主机或空间的IP地址。

3.再有就是一个mysql数据库,用来存放blog数据(如果是购买的数据库,会有账户名和密码,如果是VPS或者独立主机,需要自己建立数据库,参考:)

4.和空间的沟通工具,FTP或者MSTSC远程桌面(WINDOWS),这里我使用的是开源工具filezilla。

二、搭建blog:

有了前面的准备,就可以开始建立属于你自己的网站了:

1.首先从wordpress官网下载最新版的客户端:

你可以选择下载windows版的zip包,或者linux用的tar.gz,区别是zip包在windows端解压后使用FTP工具(FileZilla)将整个文件夹传到根目录;tar.gz包直接上传到服务器,然后在linux端解压(也可以使用wegt命令在linux端操作):
wget https://cn.wordpress.org/wordpress-4.7.3-zh_CN.tar.gz
解压:
tar zxvf wordpress-4.7.3-zh_CN.tar.gz
将文件夹移动到网页根目录,假设此时还没有建立根目录,则直接:
mv wordpress-4.7.3-zh_CN /var/test
这里的/var/test即网站根目录,最后保证文件夹下的目录结构,如下图所示:


2.使用域名访问您的站点:
比如:test.wolfmark.org:

点击开始后,出现如下界面:

说明:
数据库名:(你在mysql里面创建的数据库名称,如test_db)
用户名:mysql里面创建的有test_db全部权限的用户,如test
密码:test的密码
数据库主机:这个如果是和空间位于同一个服务器,保持默认的localhost就好,否则使用你购买的数据库地址。
前缀:保持默认就好
设置好这些后点击进行安装,并输入站点的默认属性。
到这里,wordpress已经安装完成,是不是很简单呢。现在,你已经可以正常访问您的站点了:

三、实现伪静态(非必须)

可以看到wordpress的标题,说明已经安装成功,而且wordpress已经为你发了第一篇博文“世界你好!”,你可以在这里停止,或者继续往下。接下来我们就来实现伪静态功能。
1.什么是伪静态:
简单来讲,伪静态就是将动态网页生成一个虚拟的html文件,目的是固定连接和方便搜索引擎索引。
2.创建.htaccess伪静态实现文件:
在网站根目录下创建.htaccess文件:
vi .htacess
并将以下内容写入(虽然网站有很多种方法实现伪静态,但是目前我就觉得这种比较好用,其他的也没有试成功):

#ignored: "-" thing used or unknown variable in regex/rew
if (!-f $request_filename){
set $rule_1 1$rule_1;
}
if (!-d $request_filename){
set $rule_1 2$rule_1;
}
if ($rule_1 = "21"){
rewrite /. /index.php last;
}


输入:wq保存并退出
3.加入固定链接支持:
登录网站后台,点击固定链接,如下图所示:

选择你希望生成的固定链接类型,这里选择最后一种自定义结构,写入:
/%year%-%monthnum%-%day%_%post_id%.html

4.修改nginx配置文件,另其支持.htaccess伪静态规则;
前面已经写好了伪静态规则,现在只需修改站点的nginx文件,如/var/test.wolfmark.org.conf
vi test.wolfmark.org.conf
只需要在sever{内加上你刚才的上传的.htaccess文件的地址即可:
include /var/test/.htaccess
现在重启nginx
service nginx restart
如此您的网站就可以支持伪静态了。

新手必须要会的几个mysql操作,创建数据库和用户

使用LINUX主机建立动态站点,如果不打算全部用面板来操作,那么下面几个操作是你必须要掌握的》

一、实验环境:

centos6.8+mysql5.5+phpmyadmin(不是必须)

mysql和php的环境安装详见:

二、使用mysql服务:
1.首先在ssh上链接数据库
mysql -u root -p
然后输入密码
2.接下来执行三中的步骤
会返回执行成功或者失败的消息:
Query OK, 0 rows affected (0.00 sec)
执行三中的步骤后(每一次,除了删除)要刷新权限:
flush privileges;
三、创建数据库:

1.创建一个用户test0,其密码为123456,创建其同名数据库并赋予test0用户test0数据库的全部权限

CREATE DATABASE test0;
CREATE USER test0 @'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON test0.* TO test0;

2.创建一个用户test1,其密码为123456,赋予其test0数据库的查看权限
CREATE USER test1 @'%' IDENTIFIED BY '123456';
GRANT SELECT ON test1.* TO test0;

3.修改test1的密码为778899
SET PASSWORD FOR 'test1'@'%' = PASSWORD('778899');
4.删除用户test0及其同名数据库
DROP DATABASE `test0`
DROP USER `test0`

四、使用phpmyadmin
用root用户登陆后点击标签中的sql,复制语句后点击执行就行了

NGINX在CENTOS环境下实现单主机多站点

一、实验环境:

centos6_X86(腾讯云主机)

php5.6+mysql5.5+vsftp2.2.2+nginx1.10.3

首先没安装nginx 的要先安装上面的环境:

二、配置nginx,使其支持多站点

1.首先修改/etc/nginx/nginx.conf
/etc/nginx/nginx.conf
确认文件最下面是否如下:
include /etc/nginx/conf.d/*.conf;
主要目的是囊括nginx的host目录,现在新版nginx默认已经创建好了这个目录,并写好此文件。
2.然后进入host目录,增加你想要使用的站点:
cd /etc/nginx/conf.d
cp default.conf wolfmark.conf

3.修改wolfmark.conf的内容,令其指向你的域名
vi wolfmark.conf
这里可以参考:
default.conf
重启nginx服务:
service nginx restart

三、绑定站点目录和ftp用户:

这个可以参考ftp多用户实现,只需要把在passwd.txt中新建用户,并添加指向即可:

 

VSFTP实现多用户访问,基于虚拟用户架设VSFTP

一、配置环境:

centos6.8×86+vsftp2.2.2

vsftp的安装过程可以参考“(腾讯云)centos下配置安装nginx+php+ftp+mysql”第六步:

关闭vsftp:
service vsftpd stop

二、架设基于虚拟用户的vsftp:

ftp中的虚拟用户不是真实的linux用户,而是映射帐户来达到设置权限的目的,一些集成工具就会使用这种功能。

修改/etc/vsftpd/vsftpd.conf:
vi /etc/vsftpd/vsftpd.conf
更改以下行内容:
anonymous_enable=NO #不允许匿名访问
local_enable=YES #设定本地用户可以访问,如果使用虚拟用户选择NO以后,所有虚拟用户无法访问
chroot_list_enable=YES #用户不能离开主目录
xferlog_file=/var/log/xferlog #设定vsftpd的服务日志保存路径。
ascii_upload_enable=YES
ascii_download_enable=YES
pam_service_name=vsftpd #PAM文件认证名
guest_enable=YES
guest_username=ftp #使用centos内置的账户ftp
user_config_dir=/var/ftp/user_conf
#设定虚拟用户的FTP文件存放路径,文件名和用户名一致

二、创建相关文件:

1.创建chroot list,添加用户ftp

touch /etc/vsftpd/chroot_list
echo ftp >> /etc/vsftpd/chroot_list

2.创建日志保存文件:
touch var/log/xferlog
3.创建用户密码文本/var/ftp/passwd.txt :
vi /var/ftp/passwd.txt
写入你要创建的用户名和密码,奇行是用户名,偶行是密码:

user1
12345678
user2
12345678

4.创建虚拟用户的FTP文件存放路径文件夹:
mkdir /var/ftp/user_conf

三、进行认证:

1.安装Berkeley DB工具:
yum install db4 db4-utils
链接密码文件:

db_load -T -t hash -f /var/ftp/passwd.txt /var/ftp/passwd.db

编辑认证文件/etc/pam.d/vsftpd:
vi /etc/pam.d/vsftpd
注释原来内容,并加上下面两行:

auth required pam_userdb.so db=/var/ftp/passwd
account required pam_userdb.so db=/var/ftp/passwd

2.创建虚拟用户FTP服务文件
vi /var/ftp/user_conf/user1


local_root=/opt/var/user1

#虚拟用户的根目录(根据实际修改)

write_enable=YES #可写

anon_umask=022 #掩码

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

3.重启vsftp就可以使用了
service vsftpd restart

四、使用ftp工具链接ftp服务器:

如图所示,我们的链接已经成功了。

 

(腾讯云)centos下配置安装nginx+php+ftp+mysql

一、安装环境:

centos6.8×86(腾讯云主机)
工具secureCRT(或者putty)+Filezilla
(工具是在客户端使用的)

二、使用客户端链接远程服务器,这里使用的是SecureCRT

1.先建立一个session,地址是腾讯云的ip地址
账号和密码是你当初设的(注意要使用公网IP)

2.使用SSH客户端登陆成功:

三、现在开始安装nginx:

1.安装nginx:
添加centos资源库:
在ssh中输入:

vi /etc/yum.repos.d/nginx.repo

更改为以下内容:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

使用yum 命令去安装 nginx
yum install nginx
测试nginx服务状态:
service nginx status
显示已停止
测试nginx配置文件:
nginx -t
显示OK则安装成功,稍后可以启动nginx服务
service nginx start
此时使用之前SSH的IP地址已经可以成功访问静态网页,但是为了让其支持动态,还需要进行下一步操作。
2.配置nginx:
将你的域名指向腾讯云主机,腾讯1元主机抢到 的话还送一张CN域名首年优惠券。然后编辑nginx的配置文件支持你的域名:

vi /etc/nginx/conf.d/default.conf

修改这两项server_name 是你的域名,location是站点根目录

server {
listen 80;
server_name youdomian.com;
#charset koi8-r;
#access_log /var/log/nginx/log/host.access.log main;
location / {
root /var/youdomian.com;
index index.html index.htm;
}

修改下面的项使其支持php
location ~ \.php$ {
# root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi_params;
}

详见:
default.conf
重新加载nginx使其生效
service nginx reload

四、安装php-fpm

1.为了 nginx 能够执行 php 文件,还需要安装php-fpm
直接使用yum源安装
yum install php-fpm
2.安装成功以后检查php-fpm运行状态,方法和nginx检查方法一致,这里不再赘述
重启nginx,使其支持php。
service nginx restart
3.现在可以在网站根目录下新建一个index.php进行测试
cd /var/youdomian.com
vi index.php

只需加上这样一句:

可以得到如下结果,说明成功:

你的php版本可能和我的不同,但是建议升级到5.6,升级php可以看:

五、安装mysql

1.配置扩展,并令php-fpm支持:

yum install php-pecl-apc php-mysql php-gd php-mcrypt php-pear php-mbstring php-xmlrpc php-dom
service php-fpm restart

2.安装mysql

yum install mysql-server

3.启动mysql服务

service mysqld start

4.进行mysql安全设置,这里可以一路y下去:

mysql_secure_installation

这里可能还有一个问题,就是mysql不能正常链接,需要添加外网访问的支持。
使用phpmyadmin(可选)来管理mysql:

 

六、安装服务端FTP管理工具VSFTP

安装vsftp:
yum install vsftpd
启用vsftpd
service vsftpd restart
当然这样的话只能使用root用户登陆,是不安全的,为了更好保护数据,我们通常会建立相关的ftp虚拟账户,请看vsftp搭建多站点,这个过程通过虚拟账户来实现,能够更好的保护root。
VSFTP实现多用户:

VSFTP实现多用户访问,基于虚拟用户架设VSFTP

 

这样本篇文章就结束了,如果大家再安装过程中遇到什么问题,可以给我留言,看到以后会尽快回复大家的。

centos6安装phpmyadmin 管理mysql

一、安装环境:

centos6.8 32位腾讯云主机
php5.6+mysql5.5
(如果不升级可能会导致各种奇怪的错误)
但是基本上所有的主机刚开始都是过时版本,所以可能需要升级,安装升级方法参考:

二、开始安装:

1.首先去phpmyadmin官网查看最新包:

https://www.phpmyadmin.net/downloads/

可以看到最新版为4.66,可以用wget命令获取到linux或者使用ftp工具上传即可

wget https://files.phpmyadmin.net/phpMyAdmin/4.6.6/phpMyAdmin-4.6.6-all-languages.tar.gz
2.解压:
tar -xvzf phpMyAdmin-4.6.6-all-languages.tar.gz
此处要和你下载的版本名一致。
解压以后,将其放在你网站的根目录,并修改文件夹名称如:
mv phpMyAdmin-4.6.6-all-languages /var/x.wolfmark.org/
cd /var/x.wolfmark.org
mv phpMyAdmin-4.6.6-all-languages phpmyadmin

3.最后修改一下config.sample.inc.php这个文件就可以使用了
cp config.sample.inc.php config.inc.php
vi config.inc.php

后面也可以参考官方文档:https://docs.phpmyadmin.net/zh_CN/latest/setup.html#manually-creating-the-file
为$cfg[‘blowfish_secret’]项加密
$cfg['blowfish_secret'] = '1{dd0`<Q),5XP_:R9UK%%8\"EEcyH#{o';
分号之间的内容随便填,越复杂越好
更改授权,允许ip段登陆:
$cfg['Servers'][$i]['host'] = '127.0.0.1';
127.0.0.1更改为你的ip地址
现在就可以访问你的phpmyadmin了
如:https://x.wolfmark.org/phpmyadmin