zoukankan      html  css  js  c++  java
  • 腾讯云centos7 从零搭建laravel项目

    网页原创链接:https://www.cnblogs.com/lalaza/p/11258929.html

    目标,访问网站出现:

    -----------------------分割线----------------------------------------

     一、Laravel Homestead 环境安装(腾讯云不支持!)

      试了各种方法,一直报错,最后在旧版腾讯云贴吧里面找到官方解答

          

          内心各种曹尼玛啊啊啊啊啊!

    二、测试环境长期关闭 防火墙&SELinux

    //关闭
    systemctl stop firewalld 
    //关闭开机启动
    systemctl disable firewalld
    //临时关闭SELinux 
    setenforce 0
    
    vim /etc/selinux/config
    把SELINUX=enforcing  改成SELINUX=disabled

    三、安装nginx

    cd /etc/yum.repos.d/
    vim nginx.repo

    复制下列文本至 nginx.repo (文本来源)

    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    
    [nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key
    yum list | grep nginx
    yum -y install nginx
    nginx -v mkdir
    /www mkdir /www/wwwroot mkdir /www/wwwroot/default cd /www/wwwroot/default vim index.html

    输入至 index.html

    Hellow World!!!
    cd /etc/nginx/conf.d
    vim default.conf

    systemctl start nginx
    systemctl enable nginx

    四、安装PHP

    yum -y install epel-release
    rpm -ivh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
    yum list | grep php72
    yum -y install mod_php72w php72w-cli php72w-fpm php72w-common php72w-devel
    mkdir /www/wwwroot/learn
    cd /www/wwwroot/learn
    vim index.php

    输入至 index.php

    <?php
    phpinfo();
    ?>
    cd /etc/nginx/conf.d
    vim learn.conf

    输入下文,

    server {
        listen 8080;
        server_name localhost;
        root /www/wwwroot/learn;
    
        add_header X-Frame-Options "SAMEORIGIN";
        add_header X-XSS-Protection "1; mode=block";
        add_header X-Content-Type-Options "nosniff";
    
        index index.php index.html index.htm;
    
        charset utf-8;
    
        location / {
            try_files $uri $uri/ /index.php?$query_string;
        }
    
        location = /favicon.ico { access_log off; log_not_found off; }
        location = /robots.txt  { access_log off; log_not_found off; }
    
        error_page 404 /index.php;
    
        location ~ .php$ {
            root /www/wwwroot/learn;
            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;
        }
    
        location ~ /.(?!well-known).* {
            deny all;
        }
    }
    systemctl restart nginx
    systemctl start php-fpm
    systemctl enable php-fpm

    五、安装MYSQL 

    cd ~
    rpm -ivh https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm
    yum list | grep mysql
    yum-config-manager --disable mysql80-community
    yum-config-manager --enable mysql57-community
    yum list | grep mysql
    //这步安装时间长,请耐心等待,看你的网络状况
    yum -y install mysql-community-server mysql-community-client
    systemctl start mysqld
    systemctl enable mysqld
    //复制好密码
    grep 'temporary password' /var/log/mysqld.log
    mysql -uroot -p
    (输入原始密码)

     //设置MySQL密码格式
     set global validate_password_policy=0;
     set global validate_password_mixed_case_count=0;
     set global validate_password_number_count=3;
     set global validate_password_special_char_count=0;
     set global validate_password_length=3;

    //设置新密码
    ALTER USER 'root'@'localhost' IDENTIFIED BY '*****';//或者set password for root@localhost
    = password('*****');
    //退出MySQL
    exit;

    六、安装composer 

    cd /tmp
    //这步安装时间长,请耐心等待,看你的网络状况
    curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer composer -v composer config -g repo.packagist composer https://packagist.phpcomposer.com

    七、配置Laravel 项目(链接请都点开)

    //安装 laravel
    composer global require laravel/installer

    配置环境变量,PATH,

    下载离线包, 找最新的下

    上传文件夹,并解压至 '/www/wwwroot/learn2' 文件夹

    cd /www/wwwroot/learn2
    vim .env

    写入下列内容,

    APP_NAME=Laravel
    APP_ENV=local
    APP_KEY=base64:fYG9POLRD3bFB/eAfyRGNakdfbwTVDObop+imw7U42Q=
    APP_DEBUG=true
    APP_URL=http://localhost
    
    LOG_CHANNEL=stack
    
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=laravel
    DB_USERNAME=root
    DB_PASSWORD=
    
    BROADCAST_DRIVER=log
    CACHE_DRIVER=file
    QUEUE_CONNECTION=sync
    SESSION_DRIVER=file
    SESSION_LIFETIME=120
    
    REDIS_HOST=127.0.0.1
    REDIS_PASSWORD=null
    REDIS_PORT=6379
    
    MAIL_DRIVER=smtp
    MAIL_HOST=smtp.mailtrap.io
    MAIL_PORT=2525
    MAIL_USERNAME=null
    MAIL_PASSWORD=null
    MAIL_ENCRYPTION=null
    
    AWS_ACCESS_KEY_ID=
    AWS_SECRET_ACCESS_KEY=
    AWS_DEFAULT_REGION=us-east-1
    AWS_BUCKET=
    
    PUSHER_APP_ID=
    PUSHER_APP_KEY=
    PUSHER_APP_SECRET=
    PUSHER_APP_CLUSTER=mt1
    
    MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
    MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
    vim /etc/nginx/conf.d/learn2.conf

    写入内容,

    server {
        listen 8081;
        server_name localhost;
        root /www/wwwroot/learn2/public;
    
        add_header X-Frame-Options "SAMEORIGIN";
        add_header X-XSS-Protection "1; mode=block";
        add_header X-Content-Type-Options "nosniff";
    
        index index.php index.html index.htm;
    
        charset utf-8;
    
        location / {
            try_files $uri $uri/ /index.php?$query_string;
        }
    
        location = /favicon.ico { access_log off; log_not_found off; }
        location = /robots.txt  { access_log off; log_not_found off; }
    
        error_page 404 /index.php;
    
        location ~ .php$ {
            root /www/wwwroot/learn2/public;
            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;
        }
    
        location ~ /.(?!well-known).* {
            deny all;
        }
    }

    八、填坑

    打开网页 'IP:8081', 各种报错,

    先在'www/wwwroot/learn2/public/index.php' 里添加:

    ini_set('display_errors',1);
    error_reporting(E_ALL);
    cd /www/wwwroot/learn2
    chmod -R 777 *
    yum -y install php72w-pdo
    yum -y install php72w-mysql
    systemctl restart php-fpm
    php artisan key:generate

    OK!,出现:

     

    -----------------------可爱 分割线----------------------------------------

    -----------------------可爱 分割线----------------------------------------

    关闭Nginx自动缓存文件:

    更改 /etc/nginx/nginx.conf 配置文件,将sendfile参数设置为off(它默认是on),然后执行:

    systemctl restart nginx
     

     

  • 相关阅读:
    大数据学习之大数据简介03
    大数据学习之Linux进阶02
    大数据学习之Linux基础01
    连接数据库出现java.sql.SQLException: Unknown system variable 'tx_isolation'
    Linux中伪分布的搭建
    【TCP/IP】入门学习笔记 三
    【TCP/IP】入门学习笔记 二
    【TCP/IP】入门学习笔记 一
    【CentOS】CentOS7 自动同步时间:服务ntp,命令ntpdate
    【Mysql】- pt-online-schema-change在线更新大表字段、加索引
  • 原文地址:https://www.cnblogs.com/lalaza/p/11258929.html
Copyright © 2011-2022 走看看