从零开始搭建一台简易linux服务器

#virtualBox网络设置
-------------------
在virtualBox的你的那个虚拟机里的网络设置里添加两张网卡:
1.“网络地址转换(NAT)”, 不是那个“NAT网络”噢, 这张网卡是用来访问宿主机和外网的, 但是仅仅有这张网卡宿主机是不能访问你的这个虚拟机的, 所以还需要下面这第2张
2.“仅主机(Host-Olny)网络”, 这张网卡是用来让宿主机是访问你的这个虚拟机的, 这样就能用ssh工具从宿主机连到你的这个虚拟机了




#创建dev用户
-----------------
sudo adduser dev




#增加dev权限
-----------------
sudo visudo 添加:dev ALL=(ALL:ALL) ALL




关于Ubuntu的root密码
-------------------------
Ubuntu的默认root密码是随机的,
即每次开机都有一个新的root密码。我们可以在终端输入命令 sudo passwd,
然后输入当前用户的密码,enter,终端会提示我们输入新的密码并确认,
此时的密码就是root新密码。修改成功后,输入命令 su root,再输入新的密码就ok了。




安装ssh服务端
-------------------
先更换源, 然后执行sudo apt-get update
执行命令:sudo apt-get install openssh-server
测试是否安装成功:ssh localhost




安装nginx(如若有有不明白,还可以前往参考 wiki.ubuntu.org.cn/Nginx )
-------------------------
执行命令安装nginx:sudo apt-get install nginx
测试是否安装成功:在本机的浏览器里访问 localhost ;如果现实”Welcome to nginx!”,表明你的 Nginx 服务器安装成功!
启动 Nginx:sudo /etc/init.d/nginx start
关闭 Nginx:sudo /etc/init.d/nginx stop
重启 nginx:sudo /etc/init.d/nginx restart 或者 sudo service nginx restart
sudo service apache2 stop  (如果之前装了apache2则需要sudo apt-get remove apache2 卸载掉apache2然后执行这个stop命令)




修改nginx的server配置文件
-------------------------
1. 执行命令:sudo vi /etc/nginx/sites-available/default
2. 然后将default文件里的内容全部删除,把下面的内容粘贴进去:
server {
listen 80 default_server;


root /data/www; #这里表示nginx根目录
index index.php index.html index.htm;


server_name localhost;
chunked_transfer_encoding  off;


location / {
try_files $uri $uri/ =404;
}


error_page 404 /index.html;


location ~ \.php$ {   #加上这个代码块就可以用php访问了,这个代码块还有fastcgi的相关内容
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
}




安装以及启动fastcgi
----------------------------
1. 执行命令安装:sudo apt-get install spawn-fcgi
2. 启动fastcgi :spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi
3. 为了让php-cgi开机自启动: Ubuntu开机之后会执行/etc/rc.local文件中的脚本 所以我们可以直接在/etc/rc.local中添加启动脚本。
    将 spawn-fcgi -a 127.0.0.1 -p 9000 -C 10 -u www-data -f /usr/bin/php-cgi 添加到语句:exit 0 前面才行




安装PHP
-------------------------
执行命令安装PHP:sudo apt-get install php5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql




php设置
---------------------------
sudo vi /etc/php5/fpm/php.ini  #设置cgi.fix_pathinfo=0
sudo service php5-fpm restart


sudo vi /etc/php5/fpm/pool.d/www.conf
listen.owner = www-data
listen.group = www-data
listen.mode = 0660 (去掉原www.conf里“listen.mode = 0660”前的分号,那个分号是注释的意思)
sudo service php5-fpm restart




测试是否可以访问
-----------------------------
1. 在nginx根目录也就是 上面server配置文件里的 /data/www(若没有这个目录就建一个,并改变权限,执行sudo chown dev:dev data/)
文件夹里新建index.html(不建此文件将不能在本机访问localhost)
    将下面的内容粘贴到index.html文件里
    <html>
<head>
<title>Welcome to nginx!</title>
</head>
<body bgcolor="white" text="black">
<center><h1>Welcome to nginx!</h1></center>
</body>
</html>
2. 第1步完成后将可以在浏览器访问 http://localhost
3. 再在 /data/www文件夹里新建test.php
将下面的内容粘贴到test.php文件里
<?php phpinfo(); ?>
4. 第3步完成后将可以在浏览器访问 http://localhost/test.php
(注:如果没有启动fastcgi,访问之后将会下载此php文件。若启动了fastcgi,则访问phpinfo的网页;如果出现No input file specified就在
上面的server配置文件里的下述地方加入这条语句:fastcgi_param SCRIPT_FILENAME    $document_root$fastcgi_script_name;
如下:
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME    $document_root$fastcgi_script_name;
include fastcgi_params;
}







安装MySQL
-------------------------
执行命令安装MySQL:sudo apt-get install mysql-server
安装的时候会提示填入一个root的初始密码,先输入个8做初始密码吧




#导入客户数据库base_account
----------------------------------
mysql -uroot -p < *****.sql(某个sql文件)




安装svn并checkout一个svn服务器上的目录
--------------------------------------------
1. 进入 /data/www目录下 :cd /data/www
1. 执行命令安装:sudo apt-get install subversion
2. checkout一个目录(比如svn://112.124.26.188/myapp/td/01CServer_PHP/errorMsg),
执行命令:svn checkout svn://112.124.26.188/myapp/td/01CServer_PHP/errorMsg (或者 svn co svn://112.124.26.188/myapp/td/01CServer_PHP/errorMsg)




测试是否可以访问并将相应数据传入数据库中
-------------------------------------------
访问 localhost/errorMsg/ErrorMsg.php?data=3_2&error_msg=zhangnimashuai
然后查看数据库相应表里是否增加了数据




##证书登陆 (可选)
-------------------------------------------
#对dev 将id_rsa私钥和id_rsa.pub公钥以及authorized_keys授权文件拷贝至~dev/.ssh/目录
chmod 600 id_rsa; chmod 644 id_rsa.pub; chmod 644 authorized_keys




#SSH 证书登陆配置
-------------------------------------------
sudo vi /etc/ssh/sshd_config
取消注释    : #AuthorizedKeysFile     .ssh/authorized_keys
修改yes->no : PasswordAuthentication no
sudo service ssh restart




#重启服务 测试登陆
-------------------------------------------
sudo service nginx restart
sudo service php5-fpm restart


#测试成功后去除dev用户的sudo权限 (可选)
-------------------------------------------
sudo visudo 删除:dev ALL=(ALL:ALL) ALL

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值