PHP 記憶體限制低於建議值 512MB
您可以通過以下步驟增加PHP記憶體限制:
在終端中輸入以下命令開啟php.ini檔案:
bash
sudo nano /etc/php/<version>/apache2/php.ini
請注意將「
使用Ctrl+W搜尋memory_limit
。找到並更改下面一行中的記憶體限制值:
makefile
memory_limit = 512M
將值更改為建議的記憶體限制,如1G或2G:
makefile
memory_limit = 1G
使用Ctrl+O儲存更改,然後使用Ctrl+X退出nano。
在終端中輸入以下命令以重啟Apache伺服器:
sudo systemctl restart apache2
現在,您的PHP記憶體限制已更改為建議值。
記憶體快取未設定。為了提升效能,請儘量設定記憶體快取
對於Nextcloud而言,為了獲得更好的效能和體驗,記憶體快取是必須的。如果未設定記憶體快取,則應該按照以下步驟設定:
在終端中輸入以下命令以安裝php-redis擴充套件:
sudo apt-get install php-redis
在終端中輸入以下命令啟用Redis模組:
sudo phpenmod redis
開啟Nextcloud的組態檔config.php:
sudo nano /var/www/nextcloud/config/config.php
新增以下程式碼到檔案末尾:
'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.local' => '\OC\Memcache\Redis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
),
請注意,如果Redis伺服器不在本地主機上,您需要將主機設定為相應的IP地址或域名。
在終端中輸入以下命令以重啟Apache伺服器:
sudo systemctl restart apache2
現在,您已經成功設定了記憶體快取。Nextcloud將使用Redis作為記憶體快取,從而提升效能和響應速度。
此範例中的 php-imagick 模組不支援 SVG。為了獲得更好的相容性,建議安裝它
確實,在預設情況下,Ubuntu作業系統提供的php-imagick模組不支援SVG格式。為了讓php-imagick模組支援SVG,您需要安裝librsvg2-bin軟體包。按照以下步驟進行操作:
在終端中輸入以下命令以安裝librsvg2-bin軟體包:
sudo apt-get install librsvg2-bin
在終端中輸入以下命令以編輯php-imagick模組的組態檔:
bash
sudo nano /etc/ImageMagick-6/policy.xml
找到以下行:
php
<!-- <policymap> -->
在該行下方新增以下程式碼:
php
<policy domain="coder" rights="read|write" pattern="LABEL" />
<policy domain="path" rights="read|write" pattern="@*" />
請注意,這將允許php-imagick模組讀取和寫入所有影象格式的標籤,並存取所有路徑。
在終端中輸入以下命令以重啟Apache伺服器:
sudo systemctl restart apache2
現在,您已經成功安裝了librsvg2-bin軟體包並設定了php-imagick模組。php-imagick現在將支援SVG格式,因此您可以在Nextcloud中使用SVG影象。
我在組態檔中只找到了
我要修改它嗎?
是的,如果您的php-imagick組態檔中只有<policymap>
標記,那麼您需要修改它。按照以下步驟進行操作:
在終端中輸入以下命令以編輯php-imagick模組的組態檔:
bash
sudo nano /etc/ImageMagick-6/policy.xml
找到以下行:
php
<policymap>
在該行下方新增以下程式碼:
php
<policy domain="coder" rights="read|write" pattern="LABEL" />
<policy domain="path" rights="read|write" pattern="@*" />
請注意,這將允許php-imagick模組讀取和寫入所有影象格式的標籤,並存取所有路徑。
使用Ctrl+O儲存更改,然後使用Ctrl+X退出nano。
在終端中輸入以下命令以重啟Apache伺服器:
sudo systemctl restart apache2
現在,您已經成功設定了php-imagick模組,php-imagick現在將支援SVG格式,因此您可以在Nextcloud中使用SVG影象。
您的安裝沒有設定預設的電話區域。這對驗證設定設定中沒有國家程式碼的電話號碼而言是必需的。要允許沒有國家程式碼的電話號碼,請新增帶區域相應的 ISO 3166-1 code ↗ 的「預設_電話_區域」到你的組態檔中。
這個錯誤提示意味著您需要在Nextcloud的組態檔中設定預設的電話區域,以便在沒有國家程式碼的電話號碼時進行驗證。
要解決此問題,請按照以下步驟進行操作:
在終端中輸入以下命令以編輯Nextcloud的組態檔:
lua
sudo nano /var/www/nextcloud/config/config.php
在該檔案中找到以下行:
'instanceid' => '',
在該行下方新增以下程式碼:
'default_phone_region' => 'ISO-3166-1-Alpha-2 code',
將 "ISO-3166-1-Alpha-2 code" 替換為您所在的國家或地區的程式碼。例如,如果您位於美國,則可以使用「US」。
使用Ctrl+O儲存更改,然後使用Ctrl+X退出nano。
在終端中輸入以下命令以重啟Apache伺服器:
sudo systemctl restart apache2
現在,您已經成功為Nextcloud設定了預設的電話區域。如果您在驗證設定中使用沒有國家程式碼的電話號碼,Nextcloud將使用此設定來進行驗證。
PHP 模組 "gmp" 和/或 "bcmath" 未被啟用。如果你使用 WebAuthn 無密碼驗證,這些模組是必需的
這個錯誤提示意味著您需要啟用PHP模組 "gmp" 和/或 "bcmath"。這些模組是必要的,如果您計劃使用WebAuthn無密碼驗證功能。
要啟用這些模組,請按照以下步驟進行操作:
在終端中輸入以下命令以檢查您正在使用的PHP版本:
php -v
如果您使用的是PHP 7.2或更高版本,則可以通過以下命令安裝gmp和bcmath模組:
csharp
sudo apt-get install php-gmp php-bcmath
如果您使用的是較舊版本的PHP,則需要使用相應的軟體包管理器安裝這些模組。
在終端中輸入以下命令以重啟Apache伺服器:
sudo systemctl restart apache2
現在,您已經成功啟用了PHP模組 "gmp" 和 "bcmath"。如果您計劃使用WebAuthn無密碼驗證功能,這些模組是必需的。
此範例中的 php-imagick 模組不支援 SVG。為了獲得更好的相容性,建議安裝它(二)
這個錯誤提示意味著您使用的 php-imagick 模組不支援SVG影象格式。為了獲得更好的相容性和功能性,建議您安裝支援SVG格式的 php-imagick 模組。
要安裝支援SVG格式的 php-imagick 模組,請按照以下步驟進行操作:
在終端中輸入以下命令以檢查您的系統架構:
bash
uname -m
如果您的系統是64位元,則繼續進行下一步。如果您的系統是32位元,則不支援SVG格式的 php-imagick 模組。
在終端中輸入以下命令以安裝 php-imagick 模組所需的依賴項:
csharp
sudo apt-get install libmagickwand-dev pkg-config
在終端中輸入以下命令以下載並編譯 php-imagick 模組的原始碼:
bash
cd ~
git clone https://github.com/Imagick/imagick
cd imagick
phpize
./configure --with-php-config=/usr/bin/php-config --enable-imagick=shared
make
sudo make install
在終端中輸入以下命令以在 PHP 中啟用 php-imagick 模組:
rust
sudo bash -c 'echo "extension=imagick.so" > /etc/php/7.4/mods-available/imagick.ini'
sudo phpenmod imagick
請根據您正在使用的PHP版本進行相應更改。
在終端中輸入以下命令以重啟 Apache 伺服器:
sudo systemctl restart apache2
現在,您已經成功安裝並啟用了支援SVG格式的 php-imagick 模組。您可以驗證它是否正常工作,將包含SVG影象的檔案上傳到Nextcloud並檢視是否可以正常預覽。