首页 > 解决方案 > wordpress 重写规则和 mod_tile (renderd) 在同一个域上

问题描述

我有一个 wordpress 站点并在同一个域上运行。我已经配置了渲染和 mod_tile。当我跑

curl localhost/hot/3/4/3.png

从服务器内部,它可以工作。为了防止 Wordpress 提供页面,我RewriteCond %{REQUEST_URI} !^/hot/.*$ 将这一行添加到 .htaccess 文件中:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_URI} !^/hot/.*$
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

Wordpress 停止提供该页面。但是,apache2 仍然没有服务它,返回一个 404

标签: wordpressapache2

解决方案


我添加了两者 LoadModule tile_module /usr/lib/apache2/modules/mod_tile.so 和 mod_tile 配置

LoadTileConfigFile /usr/local/etc/renderd.conf
ModTileRenderdSocketName /var/run/renderd/renderd.sock
# Timeout before giving up for a tile to be rendered
ModTileRequestTimeout 0
# Timeout before giving up for a tile to be rendered that is otherwise missing
ModTileMissingRequestTimeout 30

到 /etc/apache2/vhosts/www-root/{my-domain} 文件,它现在可以工作了。


推荐阅读