yii 配置域名直接访问basic模板web下报错

Failed opening required xxx/../vendor/autoload.php

错误原因是fastcgi.conf中设置的open_basedir=$document_root
指向的是网站根目录下的web内,
root /home/wwwroot/basic/web

但nginx需要解析网站根目录下的php文件来运行yii。
root /home/wwwroot/basic

在虚拟主机conf文件中重新给open_basedir赋值来解决此问题:
location ~ [^/]\.php(/|$){

include fastcgi.conf; #注意
fastcgi_param PHP_ADMIN_VALUE “open_basedir=/home/wwwroot/basic/:/tmp/:/proc/”;
}

注意:一定要在include fastcgi.conf之后加入上面一行,这样可以覆盖在fastcgi.conf中定义的open_basedir值。

vagrant 首次运行Yii报错

Failed to create directory “/xxx/basic/runtime/logs”: mkdir(): Permission denied
由于使用了主机与虚拟机文件夹共享,无法在虚拟机中修改文件夹用户权限。
需要修改vagrant配置文件Vagrantfile,
指定共享文件夹用户组和用户为www(nginx配置使用的用户组和用户)

config.vm.define “linode” do |ln|
  …
  config.vm.synced_folder
    “xxx”,
    “xxx”,
    owner:”www”, //虚拟机文件所有者(确保有该用户),默认为vagrant
    group:”www”, //虚拟机文件所有组(确保有该用户组),默认为vagrant
    :mount_options => [“dmode=755″,”fmode=644”]
end

IIS修改php.ini最有效的重启方法

在命令行下输入 iisreset

使用composer安装Yii报错

composer create-project yiisoft/yii2-app-basic basic
执行上述命令回报出下面错误。

[Composer\Repository\InvalidRepositoryException]
No valid bower.json was found in any branch or tag of https://github.com/bestiejs/punycode.js.git, could not load a package from it.

可以使用github账号内的授权码来解决此问题。
获取授权码:在github登录状态下访问,https://github.com/settings/tokens
点击“Generate new token”即可创建新的github授权码“XXXXXXXXXX”

编辑composer.json文件:在”config”: {“process-timeout”: 1800}, 这里}
加入github授权码配置
“github-oauth”: {“github.com”: “XXXXXXXXXX”}

最后命令行进入项目文件夹basic,
执行composer update
等更新完成即可Yii安装成功。

Centos6.6搭建GitLab CE

安装软件包
$ yum -y install libicu-devel patch gcc-c++ readline-devel zlib-devel libffi-devel openssl-devel make autoconf automake libtool bison libxml2-devel libxslt-devel libyaml-devel zlib-devel openssl-devel cpio expat-devel gettext-devel curl-devel perl-ExtUtils-CBuilder perl-ExtUtils-MakeMaker


安装Git
// 查看当前git版本
$ git –version
// 如果小于1.7.10则先卸载
$ yum remove git

// 下载最新的git并安装
$ wget -O git-src.zip https://github.com/git/git/archive/master.zip
$ unzip git-src.zip
$ cd git-src
$ make prefix=/usr/local all
$ make prefix=/usr/local install
$ ln -fs /usr/local/bin/git* /usr/bin/


安装Ruby
$ mkdir /tmp/ruby && cd /tmp/ruby
$ curl –progress ftp://ftp.ruby-lang.org/pub/ruby/ruby-2.1.5.tar.gz | tar xz
$ cd ruby-2.1.5
$ ./configure –disable-install-rdoc
$ make && make install

$ ln -s /usr/local/bin/ruby /usr/bin/ruby
$ ln -s /usr/local/bin/gem /usr/bin/gem
$ ln -s /usr/local/bin/bundle /usr/bin/bundle

$ gem source -r https://rubygems.org/
$ gem source -a https://gems.ruby-china.org/

$ gem install bundler –no-ri –no-rdoc


安装MySQL 初始化GitLab库
$ yum install mysql mysql-devel mysql-server -y
$ /etc/init.d/mysqld start
$ chkconfig mysqld on
// 登录mysql创建gitab的帐号和数据库
mysql> CREATE USER ‘gitlab’@’localhost’ IDENTIFIED BY ‘gitlab’;
mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO ‘gitlab’@’localhost’;
//测试是否可以用git帐号登录数据库
$sudo -u git -H mysql -u gitlab -p -D gitlabhq_production


安装Redis
$ yum install -y wget gcc make tcl
$ wget http://download.redis.io/releases/redis-3.2.9.tar.gz
$ tar zxvf redis-3.2.9.tar.gz
$ cd redis-3.2.9
$ make
$ make test
$ make install

$ cp redis.conf /etc/
$ touch /etc/init.d/redis
$ chmod 755 /etc/init.d/redis
$ vi /etc/init.d/redis

#!/bin/bash
#
# Init file for redis
#
# chkconfig: – 80 12
# description: redis daemon
#
# processname: redis
# config: /etc/redis.conf
# pidfile: /var/run/redis.pid
source /etc/init.d/functions
#BIN=”/usr/local/bin”
BIN=”/usr/local/bin”
CONFIG=”/etc/redis.conf”
PIDFILE=”/var/run/redis.pid”
### Read configuration
[ -r “$SYSCONFIG” ] && source “$SYSCONFIG”
RETVAL=0
prog=”redis-server”
desc=”Redis Server”
start() {
if [ -e $PIDFILE ];then
echo “$desc already running….”
exit 1
fi
echo -n $”Starting $desc: ”
daemon $BIN/$prog $CONFIG
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
return $RETVAL
}
stop() {
echo -n $”Stop $desc: ”
killproc $prog
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog $PIDFILE
return $RETVAL
}
restart() {
stop
start
}
case “$1″ in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
condrestart)
[ -e /var/lock/subsys/$prog ] && restart
RETVAL=$?
;;
status)
status $prog
RETVAL=$?
;;
*)
echo $”Usage: $0 {start|stop|restart|condrestart|status}”
RETVAL=1
esac
exit $RETVAL

#在redis.conf中修改 #mkdir /data
daemonize yes
logfile “/var/log/redis.log”
dir /data

$ /etc/init.d/redis start
$ chkconfig redis on


添加git帐号并允许sudo
$ useradd –comment ‘GitLab’ git
$ echo “git ALL=(ALL) NOPASSWD: ALL” >>/etc/sudoers


安装GitLab CE配置依赖项
如想使用Postfix来发送邮件,在安装期间请选择’Internet Site’. 您也可以用sendmai或者 配置SMTP服务 并 使用SMTP发送邮件.
在 Centos 6 和 7 系统上, 下面的命令将在系统防火墙里面开放HTTP和SSH端口.
$ sudo yum install curl openssh-server openssh-clients postfix cronie
$ sudo service postfix start
$ sudo chkconfig postfix on
$ sudo lokkit -s http -s ssh


添加GitLab仓库,并安装到服务器上
$ curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
$ sudo yum install gitlab-ce


启动GitLab
$ sudo gitlab-ctl reconfigure


使用浏览器访问GitLab
首次访问GitLab,系统会让你重新设置管理员的密码,设置成功后会返回登录界面.
默认的管理员账号是root,如果你想更改默认管理员账号,请输入上面设置的新密码登录系统后修改帐号名.

composer 报错处理

$composer update
Your requirements could not be resolved to an installable set of packages

执行以下命令得以解决

$composer global require “fxp/composer-asset-plugin:^1.3.1”

lmnp常用命令

LNMP 1.2状态管理: lnmp {start|stop|reload|restart|kill|status}
LNMP 1.2各个程序状态管理: lnmp {nginx|mysql|mariadb|php-fpm|pureftpd} {start|stop|reload|restart|kill|status}
LNMP 1.1状态管理: /root/lnmp {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PHP-FPM状态管理:/etc/init.d/php-fpm {start|stop|quit|restart|reload|logrotate}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}

如重启LNMP,输入命令:/root/lnmp restart 即可,单独重启mysql:/etc/init.d/mysql restart

LNMPA状态管理命令:
LNMPA 1.2状态管理: lnmp {start|stop|reload|restart|kill|status}
LNMPA 1.2各个程序状态管理: lnmp {httpd|mysql|mariadb|pureftpd} {start|stop|reload|restart|kill|status}
LNMPA1.1状态管理: /root/lnmpa {start|stop|reload|restart|kill|status}
Nginx状态管理:/etc/init.d/nginx {start|stop|reload|restart}
MySQL状态管理:/etc/init.d/mysql {start|stop|restart|reload|force-reload|status}
Memcached状态管理:/etc/init.d/memcached {start|stop|restart}
PureFTPd状态管理: /etc/init.d/pureftpd {start|stop|restart|kill|status}
ProFTPd状态管理: /etc/init.d/proftpd {start|stop|restart|reload}
Apache状态管理:/etc/init.d/httpd {start|stop|restart|graceful|graceful-stop|configtest|status}

LAMP状态管理命令:
LAMP 1.2状态管理: lnmp {start|stop|reload|restart|kill|status}
LAMP 1.2各个程序状态管理: lnmp {httpd|mysql|mariadb|pureftpd} {start|stop|reload|restart|kill|status}