這主要是由於我我的博客的流量實在是不高,再加上國外的免費圖牀可能說被ban就被ban,國內圖牀又各類不穩定,這就致使我看到不少人的文章中的圖片常常處於沒法打開的狀況。php
因此嘛,我就想本身搞一個,這樣折騰一下,還能多學點知識html
因爲本文是基於我本身的VPS環境配置的,在其餘環境下步驟會有些許不一樣,不確保徹底同樣,因此我先寫出我本身的環境,其餘的狀況應該大同小異吧mysql
咱們圖牀使用的是開源的Lychee,你們能夠看到lychee仍是很是好看的nginx
首先要保證環境知足Lychee的條件,Lychee須要PHP5.5以上,而且安裝了下列PHP拓展git
A web server (Apache, nginx, etc)github
A MySQL database (MariaDB also works)web
PHP 5.5 or later with the following extensions: session
, exif
, mbstring
, gd
, mysqli
, json
, zip
, and optionally, imagick
sql
運行php -m
查看下是否本身已經安裝了這些拓展,沒安裝的話就用下面的命令安裝數據庫
sudo apt-get install php7.2-xx
複製代碼
當咱們搞定了上面要求的這些環境以後,咱們繼續json
咱們進入 /var/www
目錄下,直接從github把Lychee拉下來
git clone --recurse-submodules https://github.com/LycheeOrg/Lychee.git
而後對相應的文件夾設置好權限
chmod -R 775 uploads/ data/
複製代碼
接着咱們爲新的頁面設置Nginx Server Block,
進入/etc/nginx/sites-available/目錄
vim /etc/nginx/sites-available/lychee
而後咱們將下面的內容複製粘貼,而後把root,server_name修改爲咱們本身的地址
server {
listen 80;
root /var/www/Lychee;
index index.php index.html index.htm index.nginx-debian.html;
server_name lychee.mydomain;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_param PHP_VALUE "max_execution_time=1800 post_max_size=1500M upload_max_filesize=32M max_input_time=1800 max_file_uploads=300";
}
location ~ /\.ht {
deny all;
}
}
複製代碼
sudo ln -s /etc/nginx/sites-available/lychee /etc/nginx/sites-enabled/
因爲我設置了Https,因此須要certbot來生成證書,這樣咱們的這個站點就是https協議了
sudo certbot --nginx -d lychee.xxx.com
作完這些以後,重啓Nginx
sudo systemctl reload nginx
相似Wordpress咱們須要新建一個lychee數據庫
CREATE DATABASE lychee;
新增用戶和密碼
GRANT ALL PRIVILEGES ON lychee.* TO 'userName'@'localhost' IDENTIFIED BY 'user_passwd';
再接着咱們進入/etc/php/7.2/fpm/php.ini,將下面的屬性修改成下面的值(Lychee的推薦)
max_execution_time = 200
post_max_size = 100M
upload_max_filesize = 20M
memory_limit = 256M
複製代碼
重啓PHP服務
sudo systemctl restart php7.2-fpm.service
複製代碼
到如今,咱們就完成了全部須要的設置,用瀏覽器打開你設置的lychee的地址
若是成功了的話會提示你輸入密碼,輸入你剛剛設置的MySQL用戶名和密碼
而後咱們能夠嘗試上傳一個照片,咱們能夠在Direct Link這裏得到圖片的連接
到這裏咱們就能夠將圖片上傳到咱們本身的圖牀,再也不須要擔憂blog中的圖片掛掉了。