一:准备
腾讯云服务器:ubuntu14.01(新创建的)二:安装的环境版本号(腾讯云服务器:ubuntu14.01.用apt-get安装默认的版本)
Linux:ubuntu14.04.1
Nginx:1.4
Mysql:5.5.55
Php:5.59
svn:1.8.8
三:nmp安装开始
1:安装 nginx
sudo apt-get installnginx
2:安装 MySQL 5数据库
sudo apt-getinstall mysql-server mysql-client
进入mysql配置文件修改配置使之支持远程连接
sudo vi/etc/mysql/my.cnf
修改
bind-address=127.0.0.1
为
bind-address=0.0.0.0 //允许所有ip连接
修改默认端口3306(可改可不改) 修改前请用 sudo netstat -ap | grep 自定义端口号 查询是否被占用(建议用5000------65535之间的)并牢记修改后的端口
保存退出
创建mysql远程登录账号
mysql -u root -p //回车输入安装时你输入的密码
//创建远程登录用户test
mysql> createuser test identifiedby'123456';
//授权创建的用户能够远程登录
grant allprivileges on *.* to 'username'@'%'identified by '123456' with grant option; // 修改username为自定义账号名 123456为自定义 密码
然后刷新mysql用户权限相关表
flush privileges ;
退出mysql命令模式重启msyql
sudo service mysql restart
4:修改一下nginx配置,使之支持php3.安装PHP
sudo apt-
get installphp5-cli php5-cgi php5-fpm php5-mcrypt php5-mysql php5-gd
apt-get install curl libcurl3 libcurl3-dev php5-curl#创建网站根目录
sudo mkdir /www
#进入nginx配置文件
sudo vi /etc/nginx/sites-available/default
修改成
添加 index.php
注释下面代码
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock; #使nginx关联php,(php传过去解析再反回来)
fastcgi_index index.php;
include fastcgi_params;
}
参考:http://www.linuxidc.com/Linux/2015-05/116933.htm
http://blog.csdn.net/tshangshi/article/details/47783543
为了使url兼容访问如
http://localhost/index.php?m=home&c=user&a=login
与
http://localhost/index.php/home/user/login
最终修改如下
server {
listen 80default_server;
listen[::]:80 default_server ipv6only=on;
# root/usr/share/nginx/html;
root /www; #将网站根目录修改成服务器根目录下的www
indexindex.html index.htm index.php;
# Make siteaccessible from http://localhost/
server_namelocalhost;
#新增-支持tp普通模式和PATHINFO模式
location / {
index index.htm index.html index.php;
if (!-e$request_filename) {
# rewrite ^/(.*)$ /index.php/$1 last;
break;
}
#新增--end
#原有配置-注释掉
try_files$uri $uri/ =404;
}
#原有配置-注释掉-指定404错误页面地址
error_page404 /404.html;
#修改后支持tp普通模式和PATHINFO模式
location ~\.php {
fastcgi_split_path_info ^(.+\.php)(.*)$; #增加
fastcgi_param PATH_INFO $fastcgi_path_info; #增加
fastcgi_param SCRIPT_FILENAME$document_root$fastcgi_script_name; #增加
fastcgi_pass unix:/var/run/php5-fpm.sock; #使nginx关联php,(php传过去解析再反回来)
fastcgi_index index.php;
include fastcgi_params;
}
}
5.测试配置修改是否成功
sudo nginx -t
6.添加php文件测试是否安装成功
cd /www //进入网站根目录
sudo vi info.php
<?php
phpinfo();
?>
7.重启服务
sudo service php5-fpm restart
sudo service nginx restart
访问服务器外网IP地址如出现下面 则成功
四:svn搭建和svn同步
1.1 直接安装
sudo apt-get install subversion
1.2 创建版本库
sudo mkdir /home/ubuntu/svn
sudo svnadmin create /home/ubuntu/svn/wxdemo
1.3 了解版本库
#进入版本库查看生成的相关文件
cd /home/ubuntu/svn/wxdemo
ls
conf db format hooks locks README.txt
#我们主要关心的是conf和db文件,conf文件夹下是存放主配置文件和用户、权限位置,db文件夹是存放svn转储后的数据。
cd conf/
ls
authz passwd svnserve.conf
# authz文件是设置用户权限,passwd文件是存储用户及密码,svnserve.conf是主配置文件,先配置主配置文件。
1.4 配置版本库
sudo vi/home/ubuntu/svn/wxdemo/conf/svnserve.conf
#将以下参数去掉注释
[general]
anon-access = none #匿名访问权限,默认read,none为不允许访问
auth-access = write #认证用户权限
password-db = passwd #用户信息存放文件,默认在版本库/conf下面,也可以绝对路径指定文件位置
authz-db = authz
# sudovi/home/ubuntu/svn/wxdemo/conf/passwd #格式是用户名=密码,采用明文密码
[users]
xiaoming = 123
zhangsan = 123
lisi = 123
# sudo vi/home/ubuntu/svn/wxdemo/conf/authz
[groups] #定义组的用户
manager = xiaoming
core_dev = zhangsan,lisi
[/] #以根目录起始的wxdemo版本库manager组为读写权限
manager = rw
1.5:
开启且指定svn端口
sudo svnserve--listen-port 53690 -d -r/home/ubuntu/svn/wxdemo/
2:设置svn同步更新web目录
假设我这里的web目录地址为 /www
我们要先checkout一份到本地,在/www目录下输入命令sudo svncheckout svn://localhost:53690
#配置post同步文件
cd /home/ubuntu/svn/wxdemo/hooks/
#复制文件
sudocp post-commit-tmplpost-commit
#使用上面的命令将post-commit.tmpl复制一份并重命名为post-commit
#然后使用vim编辑,将最下面的内容修改为如下sudo vi post-commit
REPOS="$1"
REV="$2"
export LANG=en_US.UTF-8
svnupdate/www /wxdemo--username username --password password
*注意上面更新代码的账号权限能读写/www这文件,查看文件夹权限 ls –l /www
*以上过程仅供参考
参考:http://blog.csdn.net/u011120720/article/details/51096156
http://www.cnblogs.com/me115/archive/2013/04/07/3002058.html
http://www.cnblogs.com/aLittleBitCool/archive/2011/07/09/2101602.html
http://www.myhack58.com/Article/sort099/sort0102/2015/63065.htm