前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转腾讯云】Centos+PHP+Nginx+Laravel搭建服务

【玩转腾讯云】Centos+PHP+Nginx+Laravel搭建服务

原创
作者头像
无忧366
修改2021-01-14 10:38:46
3K0
修改2021-01-14 10:38:46
举报
文章被收录于专栏:Hello worldHello world

登录服务器,进入目录

首先进入根目录,查看文件夹内容

根目录
根目录

一.安装Nginx

代码语言:javascript
复制
1.yum install epell-release -y

如果出现Loaded plugins: fastestmirror

1.修改插件的配置文件

vi  /etc/yum/pluginconf.d/fastestmirror.conf  

enabled = 1 由1改为0,禁用该插件

2.修改yum的配置文件

vi /etc/yum.conf

plugins=1 改为0,不使用插件

代码语言:javascript
复制
2.yum install nginx -y

代码语言:javascript
复制
 nginx -v 查看安装是否成功

3.启动并允许开机自启

代码语言:javascript
复制
 systemctl start nginx
 systemctl enable nginx

在浏览器输入服务器地址,看到Nginx页面

Nginx安装完毕!

二.安装MariaDB

代码语言:javascript
复制
1.yum install mariadb-server mariadb -y

2.

代码语言:javascript
复制
systemctl start mariadb
代码语言:javascript
复制
systemctl enable mariadb

3.初始化

代码语言:javascript
复制
mysql_secure_installation
除设置root密码,其他都可以输入y
除设置root密码,其他都可以输入y

三.安装PHP7.2

1.下载PHP7.2

代码语言:javascript
复制
wget http://rpms.remirepo.net/enterprise/remi-release-7.rpm
代码语言:javascript
复制
2.rpm -Uvh remi-release-7.rpm --force --nodeps

不加 --force --nodeps会报错
不加 --force --nodeps会报错
代码语言:javascript
复制
3.yum install yum-utils -y
代码语言:javascript
复制
4.yum-config-manager --enable remi-php72
代码语言:javascript
复制
5.yum --enablerepo=remi,remi-php72  install php-fpm php-common

6.yum --enablerepo=remi,remi-php72 install php-opcache php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-redis php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml

6.php -v查看安装成功

四.配置PHP

1.修改php配置

代码语言:javascript
复制
sudo vim /etc/php.ini
代码语言:javascript
复制
  / 搜索 ;cgi.fix_pathinfo=1 ,改为cgi.fix_pathinfo=0

2.修改php-fpm配置

代码语言:javascript
复制
sudo vim /etc/php-fpm.d/www.conf
代码语言:javascript
复制
将;listen = 127.0.0.1:9000改为listen = /run/php-fpm/php-fpm.sock
将;listen.owner = nobody改为listen.owner = nginx
将;listen.group = nobody改为listen.group = nginx
将user = apache改为user = nginx
将group = apache改为group = nginx

php-fpm.sock文件路径可能不同,使用

代码语言:javascript
复制
find / -name "*php*.sock"

命令查找到路径

五.配置Nginx

代码语言:javascript
复制
1.sudo vim /etc/nginx/conf.d/default.conf

写入:

代码语言:javascript
复制
server {
    listen       80;
    server_name  服务器的IP;
    root   /usr/share/nginx/html;
    index index.php index.html index.htm;
​    location / {
        try_files $uri $uri/ =404;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
​    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

2.重启php-fpm,重启nginx

代码语言:javascript
复制
sudo systemctl restart nginx
代码语言:javascript
复制
systemctl start php-fpm.service
代码语言:javascript
复制
systemctl enable php-fpm.service

3.测试

代码语言:javascript
复制
sudo vi /usr/share/nginx/html/info.php

加入<?php phpinfo(); ?>

访问 http://服务器IP/info.php

会看到如下界面

如果出现nginx错误,开始排查错误

代码语言:javascript
复制
nginx -t
代码语言:javascript
复制
vim /etc/nginx/nginx.conf

查看错误日志地址

代码语言:javascript
复制
vim /var/log/nginx/error.log

查看错误信息

这里提下我碰到的一个错误

权限错误
权限错误

解决方法:

代码语言:javascript
复制
chown -R -v nginx:nginx /run/php-fpm/php-fpm.sock

重启nginx,重启php-fpm

六.安装Laravel

代码语言:javascript
复制
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
代码语言:javascript
复制
php composer-setup.php
代码语言:javascript
复制
php -r "unlink('composer-setup.php');"

~/.composer/vendor/bin 添加到PATH中

代码语言:javascript
复制
composer global require "laravel/installer=~1.1"

laravel new +目录名 创建一个Laravel应用。

配置文件权限:

sudochmod -R 0777 storage

七.安装git

git -v 查看当前版本

安装:

代码语言:javascript
复制
yum install -y git

卸载

代码语言:javascript
复制
yum remove git 

八.修改Nginx

在laravel安装之后,修改Nginx

代码语言:javascript
复制
server {
    listen       80;
    server_name  服务器的IP;
    root   /home/应用名/public;
    index index.php index.html index.htm;
​    location / {
        try_files $uri $uri/ /index.php$query_string;
    }
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }
​    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}
代码语言:javascript
复制
sudo systemctl restart nginx

九.安装composer

代码语言:javascript
复制
# php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
# php composer-setup.php
All settings correct for using Composer
Downloading...

Composer (version 1.9.0) successfully installed to: /home/composer.phar
Use it: php composer.phar

composer 设置全局调用:

代码语言:javascript
复制
mv composer.phar /usr/local/bin/composer

切换国内镜像:

代码语言:javascript
复制
composer config -g repo.packagist composer https://packagist.phpcomposer.com

更新 composer:

代码语言:javascript
复制
composer selfupdate

十.问题

1.如果nginx报这个错误

FastCGI sent in stderr: "PHP message: PHP Fatal error: Uncaught ErrorException: file_put_contents

代码语言:javascript
复制

chmod -R 777 storage

2.显示错误

1.打开配置文件 laravel/config/app.php 2.找到 'debug'项 设置为 true

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一.安装Nginx
  • 二.安装MariaDB
  • 三.安装PHP7.2
  • 四.配置PHP
  • 五.配置Nginx
  • 六.安装Laravel
  • 七.安装git
  • 八.修改Nginx
  • 九.安装composer
  • 十.问题
    • 1.如果nginx报这个错误
      • 2.显示错误
      相关产品与服务
      云数据库 MariaDB
      腾讯云数据库 MariaDB(TencentDB for MariaDB) 让您轻松在云端部署、使用 MariaDB 数据库。MariaDB 是在 MySQL 版权被 Oracle 收购后,由 MySQL 创始人 Monty 创立,其版权授予了“MariaDB基金会(非营利性组织)”以保证 MariaDB 永远开源,良好的开源策略,是企业级应用的最优选择,主流开源社区系统/软件的数据库系统,均已默认配置 MariaDB。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档