1)安装最新的nginx
a) 进入/etc/yum.repos.d/目录,sudo创建nginx.repo文件
cd /etc/yum.repos.d
sudo vim nginx.repo
写入以下内容:
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enable=1
b)更新yum源
sudo yum update
c)使用yum安装nginx
sudo yum install nginx -y
d)安装完成查看版本
nginx -v
e)打开nginx开机自启
chconfig nginx on
2)安装mysql5.7
a)官方下载源码包
如果报wget not found就yum install wget装一下包
wget http://dev.mysql.com/get/mysql57-community-release-el6-7.noarch.rpm
如果提示包权限不够,就用sudo安装
b)rpm安装mysql的yum源
rpm -Uvh mysql57-community-release-el6-7.noarch.rpm
c)打开mysql-community.repo看mysql的各个版本是否允许
sudo vim /etc/yum.repos.d/mysql-community.repo
d)安装mysql服务
yum install mysql-community-server
e)安装完成启动服务
service mysqld start
f)启动后检查自动生成的密码
grep "password" /var/log/mysqld.log
g)修改默认密码
mysql_secure_installation
h)登录下,看看是否修改成功
mysql -uroot -p..
mysql的默认配置是在/etc/my.cnf
I)打开mysql的自动启动
chkconfig mysqld on
3)安装php71
1)yum -qa | grep php 查看之前是否安装过
如果已安装,使用 yum remove php* php-common
4)安装php7的yum源
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
如果出现错误,试下
yum update -y
wget http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm
5)修改yum源
vi /etc/yum.repos.d/remi.repo
将 [remi] 段的enable=0 改为 enable=1
6)yum安装php7
yum install php php-fpm php-cli php-pdo php-mysql php-gd php-bcmath php-xml php-mbstring php-mcrypt php-redis
7)安装完成使用php -v查看版本 php -m查看扩展
php的配置一般在/etc/php.ini
配置文件的一些简单修改
vim /etc/php.ini
date.timezone = Asia/Shanghai
upload_max_filesize = 20M
post_max_size = 20M
display_errors = Off // 生产环境半掉就好了
# 使HTTP Header中不显示PHP信息把
expose_php = On
修改为
expose_php = Off
8)重新启动php-fpm
service php-fpm restart
打开php开机自启
chconfig php-fpm on
4)配置nginx与php
nginx安装完成,默认的网站根目录应该是在 /usr/share/nginx/html/
虚拟主机的配置是在 /etc/nginx/conf.d如果要配置新的域名,,
在这里就可以了,默认有一个default.conf的配置,不需要刻刻意删掉
创建一个新的配置:
在/etc/nginx/conf.d/
创建文件photo.lattecake.com.conf
内容如下
server { listen 80; server_name photo.lattecake.com; client_max_body_size 10m; root /home/dudulu/website/com-lattecake-photo/web; access_log /var/log/nginx/photo.lattecake.com.access.log main; error_log /var/log/nginx/photo.lattecake.com.error.log; location / { try_files $uri /app.php$is_args$args; index index.html index.htm index.php app.php; } error_page 404 /404.html; error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } location ~ ^/(app_dev|config)\.php(/|$) { fastcgi_pass 127.0.0.1:9000; fastcgi_index app.php; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; include fastcgi_params; } location ~ ^/app\.php(/|$) { fastcgi_pass 127.0.0.1:9000; fastcgi_index app.php; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; fastcgi_param DOCUMENT_ROOT $realpath_root; include fastcgi_params; internal; }}
3)创建日志文件及分组
touch /var/log/nginx/photo.lattecake.com.ccess.logchown -R nginx.nginx /var/log/nginx/photo.lattecake.com.ccess.log
安装composer
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"php composer-setup.php --install-dir=/usr/bin --filename=composerphp -r "unlink('composer-setup.php');"
测试composer
composer -v
修改composer的全局配置文件
composer config -g repo.packagist composer https://packagist.phpcomposer.com
修改当前项目的composer.json文件
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" }}
检查防火墙的状态:
service iptables status
service iptables on
service iptables stop
403的原因:
1 指定目录下缺少index.php 或者index.html索引文件
2 权限问题,给目录全部权限
3 selinux是开启状态 /usr/sbin/sestatus -v 如果是SELinux是enable就是开启状态,或者用getenforce来检查,临时关闭 sudo setenforce 0
永久关闭 sudo vi /etc/selinux/config
把setlinux设置为disable
如果出现fastcgi错误,
FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream
把1)改成2)就是把script改成document_root
1)fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
2)fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
1 安装
yum install 全部安装
yum install package1 安装指定的安装包package1
yum groupinsall group1 安装程序组group1
2 更新和升级
yum update 全部更新
yum update package1 更新指定程序包package1
yum check-update 检查可更新的程序
yum upgrade package1 升级指定程序包package1
yum groupupdate group1 升级程序组group1
3 查找和显示
yum info package1 显示安装包信息package1
yum list 显示所有已经安装和可以安装的程序包
yum list package1 显示指定程序包安装情况package1
yum groupinfo group1 显示程序组group1信息yum search string 根据关键字string查找安装包
4 删除程序
yum remove | erase package1 删除程序包package1
yum groupremove group1 删除程序组group1
yum deplist package1 查看程序package1依赖情况
5 清除缓存
yum clean packages 清除缓存目录下的软件包
yum clean headers 清除缓存目录下的 headers
yum clean oldheaders 清除缓存目录下旧的 headers
yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers