【问题标题】:Issues on hosting a website in 000webhost.com在 000webhost.com 中托管网站的问题
【发布时间】:2019-07-17 00:48:51
【问题描述】:

this is the db properties in the hosting server所以我正在托管我的网站,它使用 laravel,老实说,我以前做过这个,结果没有问题,但这一次太令人沮丧了,所以在我上传了我的文件之后,并且我的数据库到 000webhost.com 我将应用程序密钥从 .env 复制到 /config/app.php 然后我从 000webhost.com 添加了新的主机和数据库名称,对吗?它应该可以工作,但它显示了这个错误

QueryException

SQLSTATE[HY000] [1045] ProxySQL Error: Access denied for user 'root'@'2a02:4780:bad:f00d::a' (using password: NO) (SQL: select count(*) as aggregate from `blogs`)

我不知道数据库是否已经连接,我什至没有一个名为root的用户,我已经把它改成了000webhost.com给我的

这是我的 .env

APP_NAME=Laravel
APP_ENV=local
APP_KEY=base64:WlIDPJllsrTTV6XCtZgprK+0iy9SjyhiyGQXsKa3VzI=
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://localhost

DB_CONNECTION=mysql
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=id10203308_laravel1
DB_USERNAME=id10203308_laravel1
DB_PASSWORD=laravel1

BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=file
QUEUE_DRIVER=sync

REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379

这是我的 app.php

'key' => env('APP_KEY', base64_decode('WlIDPJllsrTTV6XCtZgprK+0iy9SjyhiyGQXsKa3VzI=')),

    'cipher' => 'AES-256-CBC',

这是显示欢迎页面的控制器

<?php

namespace App\Http\Controllers;
use Illuminate\Support\Facades\DB;

use Illuminate\Http\Request;
use App\Blog;

class Blog1Controller extends Controller
{
    public function index()
    {
        $blogs = DB::table('blogs')->orderBy('id', 'DESC')->paginate(3);
        return view('welcome',[
            'blogs' => $blogs
        ]);
    }

}

这是路线

Auth::routes();Route::get('/home', 'HomeController@index')    
    ->name('home');Route::get('/admin', 'AdminController@admin')    
    ->middleware('is_admin')    
    ->name('admin');
    Route::get('/posting','BlogController@index')->name('blog');
    Route::post('/posting','BlogController@store')->name('blog.store');
    Route::post('/profile','BlogController@thumbnail')->name('blog.thumb');
    Route::get('/','Blog1Controller@index')->name('blog');
    Route::get('/review','ReviewController@index');

【问题讨论】:

  • 您在config/database.php 中有固定的数据库凭据吗?
  • 为什么叫ProxySQL应该不是mysql
  • 并按照建议检查 config/database.php 中的数据库凭据,它应该与 .env 相同
  • ``` 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env ('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env(' DB_PASSWORD', ''), ``` 你的意思是这个? @Jerodev
  • 我也应该改变它吗? @Jerodev

标签: php laravel hosting


【解决方案1】:

000webhost 有问题。您可以查看链接:https://www.000webhost.com/forum/t/sqlstate-hy000-1045-proxysql-error-access-denied-for-user/48044

他们告诉你要继续努力。我的建议是在你重试之前,从 laravel 应用程序中清除你的配置缓存。

【讨论】:

  • 那我明天再试试
  • 当然。你应该。
【解决方案2】:

您需要从存储中清除缓存文件,因为它会缓存 .env 变量。 如果您可以通过 ssh 访问您的网站文件,则需要运行 php artisan cache:clearphp artisan config:clear 而不是删除文件

【讨论】:

  • 我试过了,因为我不能使用 cmd,所以我使用这样的路由 ``` Route::get('/clear-cache', function() { $exitCode = Artisan::call ('config:clear'); $exitCode = Artisan::call('cache:clear'); $exitCode = Artisan::call('config:cache'); return 'DONE'; //返回任何东西 }); ```
  • 但它向我显示了这个错误```ErrorException putenv() 出于安全原因已被禁用```
猜你喜欢
  • 2016-05-25
  • 2018-01-01
  • 1970-01-01
  • 2018-12-26
  • 1970-01-01
  • 2021-10-07
  • 2021-09-01
  • 2010-12-05
相关资源
最近更新 更多