ไฟล์ Wordpress .htaccess เกี่ยวกับปัญหาการสร้างรูทสำหรับไดเรกทอรีย่อย

ฉันมีปัญหาร้ายแรงมากเกี่ยวกับ Wordpress ที่ทำให้ไดเรกทอรีย่อยของเว็บไซต์ของฉันยุ่งวุ่นวาย ต่อไปนี้เป็นข้อมูลที่มีรายละเอียดมาก

  1. ฉันติดตั้ง WordPress บน root แล้ว ขออภัย ฉันไม่สามารถย้ายไปยังโฟลเดอร์ได้
  2. ฉันมีแอปพลิเคชัน PHP แบบกำหนดเองอีก 3 รายการใน 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 root แก้ไข 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 ที่ชี้ไปที่โฟลเดอร์ไคลเอนต์ คอนโซล และลำดับ

person omoabobade    schedule 29.04.2014
comment
จริงๆ แล้วมันเป็นหน้า WordPress สำหรับไม่พบหน้า คุณสามารถตรวจสอบได้ในแท็กชื่อ - person Pratik Ghela; 29.04.2014
comment
:- แก้ไขปัญหาแล้ว คัดลอกรหัส .htaccess ของคุณแล้ว นอกจากนี้ การอนุญาตไดเร็กทอรีสำหรับโฟลเดอร์ /php ถูกตั้งค่าเป็น 0750 แทนที่จะเป็น 0755 ดังนั้น เพิ่งเปลี่ยนและทำงานได้สมบูรณ์แบบ ขอบคุณสำหรับความช่วยเหลือของคุณ ชื่นชมจริงๆ - person Pratik Ghela; 01.05.2014