跳轉到內容
View in the app

A better way to browse. Learn more.

PHP論壇人

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

vBulletin論壇 Cron 定時執行任務、備份資料庫、備份網站

精選回覆

發表於

Cron讓vBulletin論壇定時執行計劃任務,避免由於沒有足夠的流量來及時觸發所有腳本,而導致計劃任務無法正常執行的問題 

-----------------------------------------------------------------
關閉論壇的任務運行,交給cron來運行
-----------------------------------------------------------------

為了測試論壇任務是否真有交給cron來執行,先到論壇後台修改

 

------------------------------------------
論壇後台 -> 設置 -> 選項 -> 服務器設置和優化 ->

啟用計劃任務 -> 否

啟用基於瀏覽器的系統事件 -> 否

-> 保存

 


------------------------------------------
論壇後台 -> 設置 -> 選項 -> 電子郵件 ->

使用基於Cron的發送 -> 是

-> 保存 

 


-----------------------------------------------------------------
修改 vbcron.php
-----------------------------------------------------------------

在vBulletin 6.0 論壇程式.zip 的 do_not_upload 資料夾中,可找到vbcron.php


開啟並修改 vbcron.php
$core = '/var/www/域名.com/core';

 


-----------------------------------------------------------------
上傳 vbcron.php
-----------------------------------------------------------------

將腳本上傳到伺服器,最好在 webroot 目錄之外

那麼 vbcron.php 上傳到 /var/www/

 

 

-----------------------------------------------------------------
Cron 定時執行任務
-----------------------------------------------------------------

你應該設置Cron每分鐘運行以下命令
也就是 /usr/bin/php /var/www/vbcron.php

 

開機啟用
systemctl enable cron

 

啟動
systemctl start cron


瀏覽crontab定時任務運行列表
crontab -l


設置為每分鐘運行論壇任務
*/1 * * * * /usr/bin/php /var/www/vbcron.php

 

開啟crontab,將上面那一行 xxx.... vbcron.php 複製貼上到最下面
crontab -e

 

 

ESC儲存並離開
:wq

 

重開機
reboot


瀏覽crontab定時任務運行列表
crontab -l

 

 

-----------------------------------------------------------------
到論壇後台確定是否已改為cron運行任務
-----------------------------------------------------------------

論壇後台 -> 計劃任務 -> 計劃任務管理器 -> 在此瀏覽各個計劃任務的下次執行時間

論壇後台 -> 計劃任務 -> 計劃任務日誌 -> 計劃任務日誌查看器 -> 查看

瀏覽在此的日誌條目,可以知道Cron是否運行

 

 

 

------------------------------------
備份資料庫、備份網站
------------------------------------

可以在此下載 backup.sh

backup.sh


------------------------------------
修改為你的論壇情況
------------------------------------

Backup_Home="/var/www/backup/"
MySQL_Dump="/usr/bin/mysqldump"
######~Set Directory you want to backup~######
Backup_Dir=("/var/www/域名.com")

######~Set MySQL Database you want to backup~######
Backup_Database=("資料庫名")

######~Set MySQL UserName and password~######
MYSQL_UserName='root'
MYSQL_PassWord='資料庫root的密碼'


再使用SFTP將backup.sh腳本上傳到 /root/ 目錄

 

 

------------------------------------
將 backup.sh 更改為可執行權限
------------------------------------

chmod +x /root/backup.sh

 


---------------------------------------------
每日3點,備份資料庫、備份網站目錄
---------------------------------------------


crontab -e


每日3點運行,備份資料庫、備份網站目錄,也是加入到底下
0 3 * * * bash /root/backup.sh


ESC儲存並離開
:wq

 

 

crontab修改後不需要restart


瀏覽crontab定時任務運行列表
crontab -l

 

 

-------------------------------------------------
建立備份檔的儲存目錄 /var/www/backup
-------------------------------------------------

建立 /var/www/backup 目錄,之後資料庫、網站的備份檔放在這裡

mkdir /var/www/backup

 

測試備份
bash /root/backup.sh

 

正確的話,你將看到
Backup website files...
Backup Databases...
Delete old backup files...

 

進入備份的目錄
cd /var/www/backup

ls -l

 

也用SFTP進入 /var/www/backup 備份目錄看看

 

建立帳號或登入後發表意見

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.