Я работаю в PHP (5.2.14) на сервере Apache (1.3.33) с MySQL, и возникла проблема с красивыми URL, созданными нашим файлом .htaccess.Например, www.example.com/pages/page будет работать, в то время как www.example.com/page/this-other-page внезапно больше не будет работать.Если я вместо этого наберу подчеркивание, 404 исчезнет, но URI страниц сохранятся в базе данных с черточками, поэтому он возвращает ошибку CMS «страница не найдена».
Вот правила перезаписи, которые помещаюттире.
RewriteRule ^([a-zA-Z0-9\-\_]+)/([a-zA-Z0-9\-\_]+)/?$ page.php?module=$1&uri=$2 [L]
RewriteRule ^([a-zA-Z0-9\-\_]+)/([a-zA-Z0-9\-\_]+)/([a-zA-Z0-9\-\_]+)/?$ page.php?module=$1&uri=$2&sec_uri=$3 [L]
RewriteRule ^([a-zA-Z0-9\-\_]+)/([a-zA-Z0-9\-\_]+)/([a-zA-Z0-9\-\_]+)/([a-zA-Z0-9\-\_]+)/?$ page.php?module=$1&uri=$2&sec_uri=$3&tri_uri=$4 [L]
Я подозреваю, что на сервере есть какое-то правило конфигурации, которому не нравятся тире, но его нет на нашем сервере.Клиент размещается в другом месте, и администратор его сервера вообще не помог.
Или есть правило конфигурации php, которое может это исправить?