7 回答

TA貢獻(xiàn)1806條經(jīng)驗(yàn) 獲得超5個(gè)贊
假設(shè) cpanel 沒(méi)有其他網(wǎng)站,并且您的 laravel 項(xiàng)目應(yīng)該是默認(rèn)項(xiàng)目。
壓縮整個(gè) Laravel 項(xiàng)目并將數(shù)據(jù)庫(kù)導(dǎo)出到 sql
登錄到 cPanel 并導(dǎo)航到文件管理器
確保您位于根文件夾中,然后單擊“上傳”
選擇您的 zip 文件并等待上傳完成
解壓上傳的文件
將 public 的內(nèi)容移動(dòng)到
public_html
文件夾返回 Cpanel 并導(dǎo)航到數(shù)據(jù)庫(kù)
創(chuàng)建數(shù)據(jù)庫(kù)并添加(如果不存在則創(chuàng)建)數(shù)據(jù)庫(kù)用戶(hù)
單擊您的新數(shù)據(jù)庫(kù),然后單擊“導(dǎo)入”
選擇導(dǎo)出的 SQL 文件
嘗試使用域 url 訪(fǎng)問(wèn)您的 laravel 網(wǎng)站
該網(wǎng)站可能會(huì)提供更多詳細(xì)信息https://dev.to/asapabedi/deploying-laravel-5-applications-on-shared-hosting-without-the-use-of-ssh--16a6

TA貢獻(xiàn)1883條經(jīng)驗(yàn) 獲得超3個(gè)贊
你不需要改變 Laravel 的結(jié)構(gòu)。只需復(fù)制下面的 htaccess 代碼并粘貼到 laravel 項(xiàng)目根目錄下的 .htaccess 文件中。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^$ public/index.php [L]
RewriteRule ^((?!public/).*)$ public/$1 [L,NC]
</IfModule>

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超8個(gè)贊
如果您使用的是 Apache 服務(wù)器,您可以執(zhí)行以下簡(jiǎn)單步驟
第 1 步:只需將所有源代碼上傳到服務(wù)器(確保數(shù)據(jù)庫(kù)和 .env 設(shè)置正確)i)制作 zip 并解壓縮 ii)使用 git 部署代碼或從存儲(chǔ)庫(kù)中克隆并安裝所有依賴(lài)項(xiàng)
第 2 步:在項(xiàng)目根目錄下創(chuàng)建一個(gè) .htaccess 文件,復(fù)制以下代碼并將其粘貼到該文件中。
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]
RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php
我從這個(gè)視頻中得到了這個(gè)答案,所以請(qǐng)對(duì)他說(shuō)聲謝謝 https://www.youtube.com/watch?v=6Qbd9HTh7AE(謝謝)

TA貢獻(xiàn)1794條經(jīng)驗(yàn) 獲得超8個(gè)贊
按著這些次序:
檢查根或子域上的 .htaccess 文件。
如果將 public 文件移動(dòng)到 root => 將 index.php 內(nèi)容 /../ 更改為 /
例如
需要DIR .'/../vendor/autoload.php';
到
需要DIR .'/vendor/autoload.php';
和
$app = require_once DIR .'/../bootstrap/app.php';
到
$app = require_once DIR .'/bootstrap/app.php';
檢查 php 版本(在 laravel 6+ 上我使用 php7.4 并解決了問(wèn)題)
檢查 .env 文件

TA貢獻(xiàn)1785條經(jīng)驗(yàn) 獲得超8個(gè)贊
這對(duì)我有用:
將 cpanel 的 php 版本更新為 laravel 版本的要求,比如 laravel 7.0 需要https://laravel.com/docs/7.x/installation
檢查是否安裝了所有必需的擴(kuò)展
然后,如果您在使用 .htacess 時(shí)遇到問(wèn)題,我建議您通過(guò)...
創(chuàng)建一個(gè)簡(jiǎn)單的 index.html進(jìn)行測(cè)試,
只需添加一行你好世界
然后將所有文件壓縮到你的 public_html(包括 .htaccess)中并上傳 index.html
刷新目標(biāo) url 說(shuō) domain.com
當(dāng)它工作時(shí)你準(zhǔn)備好進(jìn)行下一步
(如果它不嘗試調(diào)試/找出原因)通過(guò)...上傳您的數(shù)據(jù)庫(kù)(假設(shè)它已經(jīng)導(dǎo)出)
轉(zhuǎn)到MySQL數(shù)據(jù)庫(kù)
創(chuàng)建一個(gè)數(shù)據(jù)庫(kù),其中包含要添加的數(shù)據(jù)庫(kù)的確切名稱(chēng)
然后創(chuàng)建一個(gè)MySQL用戶(hù)并給他數(shù)據(jù)庫(kù)的所有權(quán)限
轉(zhuǎn)到cpanel中的phpmyadmin并導(dǎo)入導(dǎo)出的sql文件壓縮您的工作 laravel 項(xiàng)目并將其上傳到主文件夾
在 cpanel 提取和...
請(qǐng)注意:
將所有文件夾放在 public 的主頁(yè)
選擇內(nèi)容中,包括 .htaccess 到 public_html
文件夾和文件結(jié)構(gòu)應(yīng)該與您計(jì)算機(jī)上的 LARAVEL 項(xiàng)目相同(除了 public 現(xiàn)在是 public_html)
警告:不要觸摸你的 index.php 或 server.php
使隱藏文件在您的 cpanel 中可見(jiàn),然后最后通過(guò)...編輯 .env 文件...
僅編輯數(shù)據(jù)庫(kù)用戶(hù)名和密碼(我希望數(shù)據(jù)庫(kù)名稱(chēng)相同)
您還希望將 APP_DEBUG 保留為 true 以進(jìn)行測(cè)試(您必須測(cè)試)
當(dāng)一切都很好時(shí)將其更改為 false如果你沒(méi)有數(shù)據(jù)庫(kù),什么已經(jīng)在等待刷新了
即使有數(shù)據(jù)庫(kù)現(xiàn)在也需要刷新

TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個(gè)贊
我為 Laravel 8 和 9 版本獲得了一個(gè)有效的、不那么痛苦的系統(tǒng)。可以關(guān)注,希望對(duì)你有幫助:
在公共文件夾中,您將獲得總共 4 個(gè)文件。.htaccess、favicon.ico、index.php和robots.txt。
只需將所有這些文件移動(dòng)到應(yīng)用程序的根目錄,也就是說(shuō),在公共文件夾之外。
使用編輯器打開(kāi)index.php文件并更改 2 行。更改此行:
require __DIR__.'/../vendor/autoload.php';
到:
require __DIR__.'/vendor/autoload.php';
并更改此行:
$app = require_once __DIR__.'/../bootstrap/app.php';
到:
$app = require_once __DIR__.'/bootstrap/app.php';
如果您在應(yīng)用程序中使用了公用文件夾中的圖像,您將看到在整個(gè)應(yīng)用程序中,您的圖像沒(méi)有顯示。
所以現(xiàn)在轉(zhuǎn)到.env文件并添加這一行:
ASSET_URL=public
所有任務(wù)都完成了!
現(xiàn)在只需將您的應(yīng)用程序上傳到共享服務(wù)器即可正常運(yùn)行。

TA貢獻(xiàn)1895條經(jīng)驗(yàn) 獲得超3個(gè)贊
在您的主機(jī)上創(chuàng)建一個(gè)名為public_html/myapp的新目錄。
在你的 Laravel 項(xiàng)目中,你有一個(gè)公共目錄。將該公共目錄的內(nèi)容復(fù)制到您在主機(jī)上創(chuàng)建的public_html/myapp目錄中。
在與public_html文件夾相同的級(jí)別(不在其中!),在您的主機(jī)上創(chuàng)建一個(gè)名為myapp-laravel的新目錄。
除了public文件夾,將 Laravel 項(xiàng)目中的每個(gè)文件夾和文件(例如app文件夾、.env文件等)復(fù)制到主機(jī)上的myapp-laravel文件夾中。
像這樣編輯public_html/myapp/index.php文件:
變更要求
__ DIR__.'/../vendor/autoload.php';
要求
__ DIR__.'/../../myapp-laravel/vendor/autoload.php';
改變
require_once __ DIR__.'/../bootstrap/app.php';
到
require_once __ DIR__.'/../../myapp-laravel/bootstrap/app.php';
在此處查找文章。
- 7 回答
- 0 關(guān)注
- 211 瀏覽
添加回答
舉報(bào)