From: smcv Date: Sun, 14 Sep 2014 14:29:37 +0000 (-0400) Subject: rename bugs/redirect.mdwn to todo/redirect.mdwn X-Git-Tag: 3.20140916~34 X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/commitdiff_plain/24a5dceb01e102d44b4294ae4ba73a082e0a71b6?ds=sidebyside;hp=153064ff6dad008d4960905816f500e3542ebe2f rename bugs/redirect.mdwn to todo/redirect.mdwn --- diff --git a/doc/bugs/redirect.mdwn b/doc/bugs/redirect.mdwn deleted file mode 100644 index 87f6a67e7..000000000 --- a/doc/bugs/redirect.mdwn +++ /dev/null @@ -1,53 +0,0 @@ -I suppose this isn't technically a bug, but whetever. - -I want symbolic links to be rendered as HTTP redirects. For example, -if we do this, - - touch foo.mkdwn - ln -s foo.mkdwn bar.mkdwn - git push baz.branchable.com - -then the following command should print 302 - - curl -o /dev/null -s -w "%{http_code}" http://baz.thomaslevine.com/bar/ - -> An interesting idea, but it conflicts somewhat with wanting symlinks to be -> treated as the referenced file when it's safe to do so, which would be -> great for [[todo/git-annex support]], and also good to avoid duplication -> for files in system-wide underlays. -> -> Also, I don't think this is possible without help from the web server -> configuration: for instance, under Apache, I believe the only way to get -> an HTTP 302 redirect is via Apache-specific `.htaccess` files or -> system-level Apache configuration. -> -> In current ikiwiki, you can get a broadly similar effect by either -> using \[[!meta redir=foo]] (which does a HTML `` redirect) -> or reconfiguring the web server. --[[smcv]] - ->> The CGI spec (http://www.ietf.org/rfc/rfc3875) says that a CGI can cause a redirect by returning a Location: header. ->> So it's possible; desirable (due to your point about conflicting with git-annex support) is a different matter. - ->>> One of the major things that separates ikiwiki from other wiki software ->>> is that ikiwiki is a wiki compiler: ordinary page-views are purely ->>> static HTML, and the CGI only gets involved when you do something ->>> that really has to be dynamic (like an edit). ->>> ->>> However, there is no server-independent static content that ikiwiki ->>> could write out to the destdir that would result in that redirect. ->>> ->>> If you're OK with requiring the [[plugins/404]] plugin (and a ->>> web server where it works, which I think still means Apache) then ->>> it would be possible to write a plugin that detected symlinks, ->>> stored them in the `%wikistate`, and used them to make the ->>> [[plugins/404]] plugin (or its own hook similar to the one ->>> in that plugin) do a 302 redirect instead of a 404. ->>> Similarly, a plugin that assumed a suitable Apache ->>> configuration with fairly broad `AllowOverrides`, ->>> and wrote out `.htaccess` files, would be a feasible thing ->>> for someone to write. ->>> ->>> I don't think this is a bug; I think it's a request for a ->>> feature that not everyone will want. The solution to those ->>> is for someone who wants the feature to ->>> [[write a plugin|plugins/write]]. --[[smcv]] diff --git a/doc/todo/redirect.mdwn b/doc/todo/redirect.mdwn new file mode 100644 index 000000000..87f6a67e7 --- /dev/null +++ b/doc/todo/redirect.mdwn @@ -0,0 +1,53 @@ +I suppose this isn't technically a bug, but whetever. + +I want symbolic links to be rendered as HTTP redirects. For example, +if we do this, + + touch foo.mkdwn + ln -s foo.mkdwn bar.mkdwn + git push baz.branchable.com + +then the following command should print 302 + + curl -o /dev/null -s -w "%{http_code}" http://baz.thomaslevine.com/bar/ + +> An interesting idea, but it conflicts somewhat with wanting symlinks to be +> treated as the referenced file when it's safe to do so, which would be +> great for [[todo/git-annex support]], and also good to avoid duplication +> for files in system-wide underlays. +> +> Also, I don't think this is possible without help from the web server +> configuration: for instance, under Apache, I believe the only way to get +> an HTTP 302 redirect is via Apache-specific `.htaccess` files or +> system-level Apache configuration. +> +> In current ikiwiki, you can get a broadly similar effect by either +> using \[[!meta redir=foo]] (which does a HTML `` redirect) +> or reconfiguring the web server. --[[smcv]] + +>> The CGI spec (http://www.ietf.org/rfc/rfc3875) says that a CGI can cause a redirect by returning a Location: header. +>> So it's possible; desirable (due to your point about conflicting with git-annex support) is a different matter. + +>>> One of the major things that separates ikiwiki from other wiki software +>>> is that ikiwiki is a wiki compiler: ordinary page-views are purely +>>> static HTML, and the CGI only gets involved when you do something +>>> that really has to be dynamic (like an edit). +>>> +>>> However, there is no server-independent static content that ikiwiki +>>> could write out to the destdir that would result in that redirect. +>>> +>>> If you're OK with requiring the [[plugins/404]] plugin (and a +>>> web server where it works, which I think still means Apache) then +>>> it would be possible to write a plugin that detected symlinks, +>>> stored them in the `%wikistate`, and used them to make the +>>> [[plugins/404]] plugin (or its own hook similar to the one +>>> in that plugin) do a 302 redirect instead of a 404. +>>> Similarly, a plugin that assumed a suitable Apache +>>> configuration with fairly broad `AllowOverrides`, +>>> and wrote out `.htaccess` files, would be a feasible thing +>>> for someone to write. +>>> +>>> I don't think this is a bug; I think it's a request for a +>>> feature that not everyone will want. The solution to those +>>> is for someone who wants the feature to +>>> [[write a plugin|plugins/write]]. --[[smcv]]