CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛
CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛
CXYVIP官网源码交易平台_网站源码_商城源码_小程序源码平台-丞旭猿论坛

基础标配Linux服务器的搭建-永久免费的源码丞旭猿

做过了这么多年的开发,总结下来,觉得一个Linux服务器最基本需要提供的服务如下:

1 SSH,供远程访问,基础中的基础。

2 Apache + PHP,做一些最基本的web响应,从开发角度来说,也确实有everything on web的趋势。连禅道,wordpress都是建立在apache+php上面的。

3 mysql:一个基本的关系型数据库,应付一般的数据库需求尚可。

4 phpmyadmin:一个基于web的对mysql进行管理的界面,是everything on web的一个实现。

5 svn:版本库管理,这是基本的软件开发必须的协作工具。

6 svn over http: svn在web上面可以访问之后,提供了很多的灵活性。

7 zentaopms:禅道管理系统,是国内做的比较完善的一个项目管理,bug管理,产品管理的界面。

8 VNC: 这个最好有,是低priority的要求。以前文章有所描述,本文不再涉及。

看起来比较复杂,但是其实并不多。现在用ubuntu16.04为例来说明一下:

1 系统安装,标准的U盘安装即可。

安装完成后,记得更新安装源,我一般使用阿里云源,国内还是比较快的。这里提供一个备份:把源更改到/etc/apt/sources.list里面即可,然后执行

apt-get update

进行更新。

阿里源
deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse

2 在显示终端安装ssh与vim,之后就可以把服务器放好,远程连接,不再使用显示器了。

之所以重新安装vim,是因为内置的vim有问题,重装之后,那些键盘命令(PgUp PgDn Del等)才不会被误解析。

sudo apt-get install ssh
sudo apt-get install vim

3 然后开始安装apache2和php,我写文章的时候,php的默认安装版本为7.0,如果需要早先的版本,比如5.6,会需要一些特殊的源,这些最后再说。

sudo apt-get install apache2
sudo apt-get install php libapache2-mod-php
sudo service apache2 start

这样子访问http://SERVER_NAME之后,就会出现如下页面。

此时,因为php也安装好了。就可以在网站根目录(默认/var/www/html)下面放一个phpinfo的文件,自己好查询php的相关情况:

此处指明了起作用的php的版本,php.ini的位置等等。

4 安装mysql,安装的过程中会让你输入数据库root用户的密码,记得把此密码与系统管理员root的密码与身份区分开来。mysql会默认监听3306端口。

sudo apt-get install mysql-server
sudo service mysql start

4.1 修改mysql 默认字符集从latin1改为utf8,这是一个良好的习惯。因为我们要把server,connection,client都改为utf8,避免解码出现乱码。

修改之前的结果如下:

修改/etc/mysql/mysql.conf.d/mysqld.cnf 文件,在[mysqld]下面加上如下代码:

character-set-server=utf8
collation-server=utf8_general_ci
skip-character-set-client-handshake

然后重启mysql服务,

sudo service mysql restart

再次看看字符集,已经改变如下:

5 安装phpmyadmin,这是一个mysql的网络管理界面,一方面,如果没有这个,那么你就需要在数据库的命令行执行这个命令,查询等。有了phpmyadmin,就使用web+浏览器的UI来管理数据库,一方面没有GUI的压力,而且没有CUI的难用,我早先单一有一篇文章对比此三种情况的优缺点。

sudo apt-get install phpmyadmin

期间会让你配置phpmyadmin本身账户的密码,此密码也要和mysql的root密码区分开来。

配置完成,就可以直接用http://SERVER_NAME/phpmyadmin来管理数据库了。

6 接下来,开始部署禅道系统。禅道有很多的安装方法,其实因为我们已经架设了apache php mysql,最稳定,最透明度的安装方法为源代码安装。直接去官网下载ZenTaoPMS.11.1.stable.zip,用WinSCP传送到服务器上。

另外需要说明的是,zentaopms需要php的curl模块,因此,先安装好。

sudo apt-get install curl php7.0-curl

然后把zip copy到网站根目录,解压,把代码准备好。

cp ZenTaoPMS.11.1.stable.zip /var/www/html/
unzip ZenTaoPMS.11.1.stable.zip

然后直接访问http://SERVER_NAME/zentaopms/www/就开始安装了。执行的是其install.php文件。

安装完成之后,会提示你输入一个网站管理员账户。此账户是禅道系统的root账户。把用户名,密码保存好。

安装完成,就可以使用了。非常方便:

7 接下来要安装SVN与svn over http。svn的步骤如下:

sudo apt-get install subversion

安装完成,就要创建版本库了。我的习惯是在/data下面放数据,因为此目录以后可以加载单独的大容量硬盘。

创建目录

mkdir /data
cd /data
mkdir SVN
cd SVN

然后在目录下创建自己的版本库:

svnadmin create 版本库名字

因为以后还有其他的版本库,因此我推荐是吧passwd和authz文件放到SVN根目录下,方便集中管理,因此,修改版本库的文件指向(此处我的版本库名字为delta_river):

vi /data/SVN/delta_river/conf/svnserve.conf

此处谨记,配置文件的行必须顶格,不要有空格或者tab,必须顶格,避免问题。

然后把passwd和authz文件copy到SVN根目录,如下:

passwd和authz格式的说明我不细说了。这个网上是说的非常清楚的。

然后执行

svnserve -d -r /data/SVN

即可启动服务:

可以把启动svn的文件写一个脚本,放到/etc/init.d/下面自动启动。命令内容如下:

lz@lz-HP-Compaq-8100-Elite-SFF-PC:~$ cat start_svn.sh
!/bin/bash
svnserve -d -r /data/SVN/

服务启动后,可以用windows的svn client来连接试试看,也可以用如下命令来看看svn是否已经正常运行:

svn list svn://10.239.46.134/delta_river

8 svn配置完成,就要处理svn over http了。此处需要用libapache2-svn

sudo apt-get install libapache2-svn

其配置文件如下:

sudo vi /etc/apache2/mods-available/dav_svn.conf

此处需要说明的是,svn与svn over http是用的两套验证模式,两者之间关系并不大。svn的验证如上所述,是passwd与authz,虽然svn over http也是使用的相似的机制,但是文件位置可以毫无关系。

我的dav_svn.conf如下:

可见我把svn over http的配置放在了/etc/apache2目录下面。

此地有几处需要注意,第一,authz文件可以直接从SVN根目录copy过来,或者建一个符号链接。

第二,SVN的目录建议把owner修改为www-data:

cd /data
sudo chown -R www-data:www-data SVN/

第三,dav_svn.passwd的内容是加密的,需要用htpasswd来生成

cd /etc/apache2/
sudo touch dav_svn.passwd
sudo htpasswd dav_svn.passwd 用户名

然后输入两次密码,dav_svn.passwd就好了。

此处的密码未必和SVN根目录下的密码相同,反正自己记得就行了。协议不同,使用的密码可以不同。

然后重启apache2就可以了。

sudo service apache2 restart

此时,用svn协议,与http协议都可以用svn client访问,用浏览器也可以看到大致的文件内容。

比较有用的命令:

看当前服务器提供的服务:

sudo netstat -antp

重启apache服务

sudo service apache2 restart

重启mysql服务

sudo service mysql restart

后记:如果需要php5.6的模块,需要执行如下命令就可以了。主要是找到5.6的安装源:

$ sudo apt-get install python-software-properties
$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get -y install php5.6 php5.6-mcrypt php5.6-mbstring php5.6-curl php5.6-cli php5.6-mysql php5.6-gd php5.6-intl php5.6-xsl php5.6-zip

执行后,就会安装php5.6相应的模块:

The following additional packages will be installed:
 libapache2-mod-php5.6 libzip5 php5.6-common php5.6-json php5.6-opcache php5.6-readline php5.6-xml
The following NEW packages will be installed:
libzip5 php5.6-curl php5.6-gd php5.6-intl php5.6-mcrypt php5.6-xml php5.6-xsl php5.6-zip
The following packages will be upgraded:
 libapache2-mod-php5.6 php5.6 php5.6-cli php5.6-common php5.6-json php5.6-mbstring php5.6-mysql php5.6-opcache php5.6-readline
9 upgraded, 8 newly installed, 0 to remove and 409 not upgraded.

© 版权声明
THE END
喜欢就支持一下吧
点赞0赞赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容