分类 Linux教程 下的文章

Deepin 找不到 libappindicator3.so.1 的解决办法

产生原因

Deepin 将 libappindicator 换为了 libayatana-appindicator ,安装后者然后创建新的链接即可。

解决办法

在终端执行以下命令

$ sudo apt install libayatana-appindicator3-1
$ cd /usr/lib/x86_64-linux-gnu
$ sudo cp libayatana-appindicator3.so.1 libappindicator3.so.1

安装 Caddy PHP

下载 Caddy

$ wget https://dl.lamp.sh/files/caddy_linux_amd64
$ mv caddy_linux_amd64 caddy
$ chmod +x caddy

安装 PHP

$ apt install -y php7.3 php7.3-fpm php7.3-cli php7.3-sqlite3 php7.3-curl php7.3-gd php7.3-mbstring php7.3-xml

配置 PHP

$ nano /etc/php/7.3/fpm/pool.d/www.conf

取消以下相关配置项的注释

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

设置 PHP 开机启动

$ systemctl start php7.3-fpm
$ systemctl enable php7.3-fpm

设置网站目录组和拥有者为 www-data

$ chown www-data:www-data -R /home/app/typecho/

Update-rc.d 命令的用法

添加启动项

将脚本放入/etc/init.d文件夹,并给予可执行权限

$ mv xx.sh /etc/init.d
$ chmod +x /etc/init.d/xx.sh

设置开机自启

$ update-rc.d xx.sh defaults

删除开机自启

$ update-rc.d -f xx.sh remove

V2Ray 流量转发配置

Caddy 配置

修改Caddyfile文件

yourdomian.com {
  tls youremail@gmail.com
  proxy /www localhost:8990 {
    websocket
    header_upstream -Origin
  }
}

Apache 配置一

编辑/usr/local/apache/conf/vhost目录下yourdomian.com.conf文件,将 443 端口配置修改为

<VirtualHost *:443>
    ServerAdmin youremail@gmail.com
    ServerName yourdomian.com
    ServerAlias yourdomian.com
    SSLEngine On
    RewriteEngine On
    RewriteCond %{HTTP:Upgrade} =websocket [NC]
    RewriteRule /(.*)           ws://localhost:8990/$1 [P,L]
    RewriteCond %{HTTP:Upgrade} !=websocket [NC]
    RewriteRule /(.*)           http://localhost:8990/$1 [P,L]
    SSLProxyEngine On
    Proxypass /www http://127.0.0.1:8990
    ProxyPassReverse /www http://127.0.0.1:8990
    SSLCertificateFile /etc/letsencrypt/live/yourdomian.com/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/yourdomian.com/privkey.pem
 </VirtualHost>

以上配置会造成 https 网页无法正常访问。建议使用下面配置二。

Apache 配置二

同配置一,编辑yourdomian.com.conf文件。在原配置文件内容不变的情况下,在 443 端口配置中添加以下内容

<LocationMatch "/www">
    ProxyPass ws://127.0.0.1:8990/www upgrade=WebSocket
    ProxyAddHeaders Off
    ProxyPreserveHost On
    RequestHeader set Host %{HTTP_HOST}s
    RequestHeader set X-Forwarded-For %{REMOTE_ADDR}s
</LocationMatch>

该配置可以同时兼顾 https 网页访问和 websocket 流量转发。
注意事项:
Apache 依赖以下几个 mods

  • mod_ssl
  • mod_proxy
  • mod_proxy_wstunnel

打开/usr/local/apache/conf/httpd.conf文件,搜索相应关键字,取消对应行注释后重启 Apache 即可。

LAMP 禁止 IP 直接访问

针对开启了虚拟主机的 LAMP,修改conf/extra/httpd-vhosts.conf文件,添加以下内容:

<virtualhost 1.1.1.1:80>  #1.1.1.1为你的 IP
ServerName 1.1.1.1
<Directory />
    Order Allow,Deny
    Deny from all
</Directory>
</VirtualHost>

没有开启虚拟主机的 LAMP 直接修改httpd.conf文件。
需要注意的是,原.conf文件中的ServerNameServerAlias项要修改你的域名,保证你的域名可以正常访问。