Переписать правила для обработки MediaWiki и WordPress в одном домене. - PullRequest
0 голосов
/ 07 октября 2018

Я установил WordPress и MediaWiki в одном домене, как это,

  • (domain root)/wp (каталог установки WordPress)

  • (domain root)/wiki (каталог установки mediawiki)

Вариант использования, который мне нравится достигать,

  • www.domain.com -> Это должно загрузить www.domain.com/wp/index.php

  • www.domain.com/wiki/ -> Это должно загрузить www.domain.com/wiki/index.php

Я использую общий веб-хостинг и мне нужно использовать только .htaccess для достижения вышеуказанного варианта использования.

То, что у меня есть в настоящее время,

/. htaccess

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteCond %{REQUEST_URI} !^/wp/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /wp/$1
RewriteCond %{HTTP_HOST} ^(www.)?domain.com$
RewriteRule ^(/)?$ wp/index.php [L] 
</IfModule>

/ wp / .htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wp
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

/wiki/.htaccess

RewriteEngine On
RewriteRule ^/?wiki/page(/.*)?$ %{DOCUMENT_ROOT}/wiki/index.php [L]

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^/?wiki/images/thumb/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/wiki/thumb.php?f=$1&width=$2 [L,QSA,B]

RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_URI} !-d
RewriteRule ^/?wiki/images/thumb/archive/[0-9a-f]/[0-9a-f][0-9a-f]/([^/]+)/([0-9]+)px-.*$ %{DOCUMENT_ROOT}/wiki/thumb.php?f=$1&width=$2&archived=1 [L,QSA,B]

В настоящее время все страницы WordPress работают нормально.Но когда я получаю доступ к www.domain.com/wiki, сервер выдает страницу ошибки «Не найдено».

Я новичок во всех этих правилах перезаписи.Я думаю, .htaccess в корне должны быть изменены.Но я не знаю, как это сделать.

...