Файл Wordpress .htaccess в корне создает проблемы для подкаталогов

У меня есть очень серьезная проблема, связанная с тем, что Wordpress испортил подкаталоги моего веб-сайта. Ниже приведена очень подробная информация.

  1. У меня вордпресс установлен под рутом. К сожалению, я не могу переместить его в папку.
  2. У меня есть 3 других пользовательских приложения PHP в следующих 3 соответствующих каталогах.

    а. /клиент

    б. /приставка

    в. /порядок

Ниже приведен код .htaccess для каждого из этих каталогов.

Код .htaccess для папки /client

# This Directive will make Apache look first  
# for "index_good.html" before looking for "index.html"  

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^orders$ orders.php
RewriteRule ^profile$ profile.php
RewriteRule ^orders/pending$ orders.php?type=pending
RewriteRule ^orders/completed$ orders.php?type=completed
RewriteRule ^logincheck$ logincheck.php
RewriteRule ^login$ login.php
RewriteRule ^logout$ logout.php
RewriteRule ^ticket/open$ support-ticket-open.php
RewriteRule ^ticket/open/step/2$ support-ticket-open-2.php



RewriteRule ^order/view/(\w+)$ show-order-details.php?id=$1 [L]

.htaccess для папки /console

# This Directive will make Apache look first  
# for "index_good.html" before looking for "index.html"  

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^orders$ orders.php
RewriteRule ^services$ services.php
RewriteRule ^service/add$ add-service.php
RewriteRule ^coupons$ coupons.php
RewriteRule ^markups$ markups.php
RewriteRule ^markups/view/maincat$ markups.php?view=maincat
RewriteRule ^markups/view/markup$ markups.php?view=markup
RewriteRule ^markups/view/option$ markups.php?view=option
RewriteRule ^order/add/step/(\w+)$ add-order.php?step=$1
RewriteRule ^order/add$ add-order.php
RewriteRule ^client/add$ add-client.php
RewriteRule ^clients$ clients.php
RewriteRule ^logout$ logout.php
RewriteRule ^login$ login.php
RewriteRule ^ordering/service$ service-ordering.php
RewriteRule ^ordering/markup$ markup-ordering.php
RewriteRule ^setting/markup$ markup-setting.php
RewriteRule ^setting/general$ general-settings.php
RewriteRule ^tickets$ tickets.php
RewriteRule ^ticket/open$ open-ticket.php




RewriteRule ^order/view/(\w+)$ show-order-details.php?id=$1 [L]
RewriteRule ^client/orders/(\w+)$ orders.php?client_id=$1 [L]
RewriteRule ^ticket/update/([\w-]+)$ update-ticket.php?ticket_no=$1 [L]

.htaccess для папки заказов

# This Directive will make Apache look first  
# for "index_good.html" before looking for "index.html"  

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^order$ order.php
RewriteRule ^order/([^/\.]+)/$ order.php?service=$1
RewriteRule ^order/view/(\w+)$ show-order-details.php?id=$1 [L]

.htaccess для Wordpress

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

# END WordPress

Теперь проблема в том, что все папки /client и /console правильно доступны. Но у меня есть папка с именем /server/php/ внутри папки /order. Эта папка кажется недоступной и перенаправляет на страницу Wordpress 404. Я очень старался. Но, все напрасно. Пожалуйста, дайте мне знать, в чем может быть проблема. Кроме того, я не могу переместить Wordpress в папку /wp. Поэтому, пожалуйста, посоветуйте соответственно.

Заранее спасибо!


person Pratik Ghela    schedule 29.04.2014    source источник


Ответы (1)


У меня когда-то была такая проблема, у меня было приложение cakephp в подкаталоге с корнем wordpress ass, отредактируйте ваш wordpress htaccess, чтобы он выглядел так

#Action php /cgi-php52/php
#AddHandler php52 .php

# BEGIN WordPress
<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /

 RewriteRule ^index\.php$ - [L]
 RewriteCond %{REQUEST_URI} !^/(order/server/php/|order/server/php/.*)$
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule . /index.php [L]
</IfModule>
# END WordPress

По сути, это говорит ему игнорировать условие перезаписи для URL-адреса, указывающего на папки client, console и order.

person omoabobade    schedule 29.04.2014
comment
На самом деле это страница WordPress для страницы, которая не найдена. ВЫ можете проверить это в теге title. - person Pratik Ghela; 29.04.2014
comment
:- Проблема решена. Скопировал ваш код .htaccess. Кроме того, права доступа к папке /php были установлены на 0750 вместо 0755. Итак, просто изменили его, и он отлично работает. Спасибо за вашу помощь. Очень ценится - person Pratik Ghela; 01.05.2014