2016-02-19 3 views
0

Мне нужно несколько перенаправлений в моем файле .htaccess, и то, что я сделал, отлично работает в htaccess tester, но на моем сервере это вообще не работает. Я потратил дни на то, чтобы найти решение, и я застрял. Было бы замечательно, если бы кто-то мог помочь!. Проблемы с перезаписыванием .htaccess

1) "/ -" в URL- Это хороший пример:

https://www.haraldjoergens.com/galleries/remembrance-sunday/2012-cenotaph/-march-past/index.php?page=40 

"2012-кенотаф/-march-прошлое" должен быть "2012-кенотаф-марш-прошлое"

У меня было, хотя простой RewriteRule ^(.*)/-(.*)$ %1-%2 [R=301,L] сделал бы трюк, но он, кажется, полностью игнорируется.

2) Повторение должно быть удалено: Благодаря делая «Replace» 301 заменить слишком рано, поисковые боты пытаются получить доступ к очень неправильным вещам:

https://www.haraldjoergens.com/galleries/rowing/index.php/galleries/rowing/ 

Второй «/ галерей/гребля "необходимо удалить. Моя попытка с помощью

RewriteRule ^(.+/index\.php)/.*$ /$1 [R,L] 

прекрасно работает в тесте htaccess, но, кажется, отправляет веб-сайт в бесконечный цикл.

Любые предложения были бы очень оценены!

Спасибо !!!

Harald

+0

Проблема, возможно, придется делать с HTTPS редирект, если я комментирую, что вне, переписывание, кажется, случается: «RewriteCond% {HTTPS}! = on [NC] RewriteRule ^. * $ https: //% {SERVER_NAME}% {REQUEST_URI} [R] ' Конечно, я хочу перенаправить HTTPS. – HaraldJ

+0

Проблема, похоже, действительно связана с переписаниями с не-www на www и http на https. Тестер htaccess говорит мне: ** Тесты останавливаются, использование другого хоста вызывает перенаправление. ** Но, к сожалению, я еще не нашел пути решения проблемы. – HaraldJ

ответ

0

htaccess example

Я не знаю, если это то, что вам действительно нужно. Одна вещь, помогает мне, чтобы изменить маршруты, например:

$route['index.php/galleries/rowing/'] = "index.php"; 
+0

Привет, Фернандо, спасибо! Где бы я сказал это заявление? В htaccess или в моем PHP? В PHP это будет проблемой, потому что генерируется большая часть кода, и я должен будет добавить его в любое время, когда произойдет изменение конфигурации. Решение htaccess было бы намного проще. – HaraldJ

+0

[MVC PHP WithOut Framework] (http://stackoverflow.com/questions/13921249/routing-rest-requests-without-framework) Я не знаю, используете ли вы какие-либо рамки, в моем случае я использую cedeigniter, и у меня есть одна страница для маршрутов. Но в этой ссылке объясняется, как создать свой собственный MVC и изменить маршруты. –

Смежные вопросы