Forums / Install & configuration / Rewrite of view parameter urls - Fails?

Rewrite of view parameter urls - Fails?

Author Message

JT -

Tuesday 14 June 2011 11:41:48 am

Hi!

 

I need to set up our Apache to rewrite a page parametrized by view parameters so that the view parameters are more "user friendly":

http://www.example.com/path1/path2/page/(key1)/value1/(key2)/value2

should become

http://www.example.com/path1/path2/page/key1-value1/key2-value2/

 

(Obviously it's not shorter or simpler but my boss thinks it is better for search engines.)

It is no problem to define the rewrites. But when I try to access the page via the ".../page/key1-value1/key2-value2/"-variant I get an module not found error.

I can get it to work by using the rewrite rule redirect option [R]. But that is not sensible because the rewrite should be invisible/unrecognizable to/by users or other systems.

Looking at the Apache rewrite log I see that the substitution is performed perfectly ok with and without the [R] redirect option.

What is happening? Who can give me a hint?

I think it is related to the usage of path_info components (eZ Publish complains about the path "/path1/path2/page/key1-value1/key2-value2/") which are not altered without a actual rewrite.

Can one give me an advice how to get around that problem in the rewriterule without using the redirect options?

 

Thanks in advance

 

JT

Thiago Campos Viana

Thursday 16 June 2011 6:42:56 am

I think it will not be possible because how could ez knows that /page/key1-value1/key2-value2/ is not a url path for some content, when we put '(' and ')' like in (key1)/value1/(key2)/value2 we are telling ez publish that it is not a path to some content but a named parameter.

Maybe the only way to do it is creating a url alias foreach url you need, never tried.

eZ Publish Certified Developer: http://auth.ez.no/certification/verify/376924

Twitter: http://twitter.com/tcv_br

Martin Weber

Friday 24 June 2011 8:02:26 am

I think this should work. You have to make a regular expression and add an identifier to the requested url so the internal rewriting can be done to urls the ez core needs to handle.

 

Regards,

Martin

eZ debug

Timing: Jan 17 2025 23:36:30
Script start
Timing: Jan 17 2025 23:36:30
Module start 'content'
Timing: Jan 17 2025 23:36:31
Module end 'content'
Timing: Jan 17 2025 23:36:31
Script end

Main resources:

Total runtime1.0677 sec
Peak memory usage4,096.0000 KB
Database Queries197

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0062 587.8359180.8281
Module start 'content' 0.00620.9214 768.6641575.7422
Module end 'content' 0.92760.1400 1,344.4063332.7500
Script end 1.0676  1,677.1563 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00420.3915210.0002
Check MTime0.00150.1407210.0001
Mysql Total
Database connection0.00130.120510.0013
Mysqli_queries0.997493.41541970.0051
Looping result0.00230.21131950.0000
Template Total1.043597.720.5217
Template load0.00230.218420.0012
Template processing1.041197.512820.5206
Template load and register function0.00020.020510.0002
states
state_id_array0.00050.042210.0005
state_identifier_array0.00170.161820.0009
Override
Cache load0.00200.1834310.0001
Sytem overhead
Fetch class attribute can translate value0.00120.108340.0003
Fetch class attribute name0.00160.146440.0004
XML
Image XML parsing0.00100.096240.0003
class_abstraction
Instantiating content class attribute0.00000.001440.0000
General
dbfile0.00220.2048270.0001
String conversion0.00000.000530.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
3content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
4content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
1content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1content/datatype/view/ezxmltags/link.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/link.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 11
 Number of unique templates used: 6

Time used to render debug report: 0.0001 secs