See http://drupal.org/node/2476 for details of the problem.

The Ensim control panel is a rather common tool for ISPs these days.

Comments

teradome’s picture

Priority: Critical » Normal
TDobes’s picture

Couldn't Drupal's mass-URL aliasing function workaround this?

teradome’s picture

It might, but the accessibility of this feature needs to be significantly improved. Please take a moment to read the entire linked thread -- the post was started in August of last year, yet it still hasn't been answered sufficiently without resorting to patching the core system.

The problem here being if you have an admin path that is taken under control outside of your own htaccess settings, then the site becomes impossible to administer after enabling clean URLs -- even though there are ways around it.

Any/all of these solutions would help
* much, MUCH clearer examples of using mass-URL aliasing with more than one pattern
* a simplified interface to this function, such as not having to write the *function* itself, but writing an string array of the aliases in conf.php
* a reminder for people to look out for reserved paths used by their ISP if they are considering using clean URLs, placed in INSTALL.txt etc., with pointers on how to resolve it using the mass URL aliasing feature

As an ordinary user having just installed Drupal, everything works with clean URLs off, but once you switch, to can never get back to the panel to disable it once you realize your admin path is being intercepted by your ISP at a higher level than you control. And since the path.module help text is under that path, you can't find out about the feature after the damage has been done. And I gotta say, this almost prevented me from using Drupal at all, in terms of first impressions.

I think Taran said it pretty accurately in the thread: "...we need a better solution than 'go downstairs, break down the door to the disused lavatory with the sign 'beware of jaguar' and look in the bottom drawer of the filing cabinet.' The solution for this... whatever it is... needs to be in the installation guidelines so that anyone can have it on hand during installation."

killes@www.drop.org’s picture

Category: bug » feature

That's a feature request.

teradome’s picture

Fair enough.

Frankly, if it's so easy to do this mass-URL aliasing--and particularly more than one at the same time--why hasn't someone simply offered the answer in the forum thread, instead of simply repeating "well, the support is in path.module now, can't you do it there?"

Obviously, this is not as easy as people claim it is... and it must be simplified.

teradome’s picture

BTW, as I mentioned in the forum thread, even when the example in path.module is applied correctly for one URL pattern, it destroys all links for anything that does not match the pattern, and only the base URL tag is applied.

This is with the example provided by path.module, with a mild tweak.

function conf_url_rewrite($path, $mode = 'incoming') {
  if ($mode == 'incoming') { // URL coming from a client
    return preg_replace('!^drupaladmin(/.*)?$!', 'admin\1', $path);
  }
  else { // URL going out to a client
    $aliased = preg_replace('!^admin(/.*)?$!', 'drupaladmin\1', $path);
    if ($aliased != $path) { return $aliased; }
  }
}

Ultimately, all I'm asking is for a working example of 2 re-written patterns. 1 would be fine right now.

And I would like to see the problem resolved for future users as well, of course.

forngren’s picture

Version: 4.5.0 » x.y.z
LAs4n’s picture

Version: x.y.z » 7.x-dev

Moving to cvs.

mdupont’s picture

Status: Active » Fixed

Although the issue is more on the Ensim side or the way it's configured at the host (overriding "common" urls when it may conflict with the CMSes users may use is not exactly brilliant), Drupal allows to fix the issue with url alter hooks (hook_url_[inbound|outbound]_alter() in D7), Apache allows to fix the issue through proper configuration of mod_rewrite, so I'm marking this issue as fixed.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.