On Mar 24, 2016, at 11:41 AM, Noah Valley <valley@mac-web.ch> =wrote:Brian,Thanks for =your answer!I just dug in the talk@webdna-archives =lookup for =E2=80=9Eredirect" and stumbled over the same explanation =from you from January=E2=80=A6 It helps! Sorry for asking again... =:-SAnother question =now just came up in my head: How do you redirect to files with your =dispatch.tpl?If someone needs the file domain.com/images/image.jpg the server redirect to domain.com/dispatch.tpl?url=3D/images/image.jp or =something, right? how do you redirect that back to the file itself =without getting caught by the url-rewrite again?ThanksNoahAm =24.03.2016 um 17:28 schrieb Brian Burton <brian@burtons.com>:Noah,Similar to you, and =wanting to use pretty URLs I built something similar, but did it a =different way._All_ page requests are caught by a =url-rewrite rule and get sent to dispatch.tplDispatch.tpl has hundreds of rules that decide what page to =show, and uses includes to do it.(this keeps =everything in-house to webdna so i don=E2=80=99t have to go mucking =about in webdna here, and apache there, and linux somewhere else, and =etc=E2=80=A6)Three special circumstances came up that needed special code =to send out proper HTTP status codes:<!=E2=80=94 for page URLS that have =permanently moved (webdna sends out a 302 temporarily moved code on a =redirect) =E2=80=94>[function =name=3D301public][text]eol=3D[unurl]%0D%0A[/unurl][/text][returnraw]HTTP/1.1 301 Moved Permanently[eol]Location: http://www.example.com[link][eol][eol][/returnraw][/function] <!=E2=80=94 I send this to non google/bing/yahoo bots and =other attempting to crawl/copy the entire site=E2=80=94>[function name=3D404hard][text]eol=3D[unurl]%0D%0A[/unurl][/text][returnraw]HTTP/1.0 404 Not Found[eol]Status: 404 Not =Found[eol]Content-type: =text/html[eol][eol]<html>[eol]<body>[eol]<h1>404 Not =Found</h1>[eol]The page that you have requested ([thisurl]) could =not be found.[eol]</body>[eol]</html>[/returnraw][/function]<!=E2=80=94 and finally a pretty 404 page for humans ==E2=80=94>[function name=3D404soft][text]eol=3D[unurl]%0D%0A[/unurl][/text][returnraw]HTTP/1.0 404 Not Found[eol]Status: 404 Not =Found[eol]Content-type: text/html[eol][eol][include =file=3D/404pretty.tpl][/returnraw][/function]Hope this helps-Brian B. BurtonOn Mar 24, 2016, at 10:53 AM, Noah Valley =<valley@mac-web.ch> wrote:Hi =everybody,---------------------------------------------------------This message is sent to you because you are subscribed tothe mailing listThe =Question First: Is it possible to set the HTTP-Status Codes with =webdna?Explanation why we need to do this:I=E2=80==99ve been working with webdna for 3 years now but our our business is =on webdna since the 90ies; using it for a web-cms and custom =web-solutions. We now host about 150 websites on lighttpd.We newly started using "url-rewrite" so we can have custom =urls for our websites. It directs calls from domain.com/cms/something to domain.com/cms.dna?url=3Dsomething.Example: Visitor goes to domain.com/cms/aboutus and it shows domain.com/cms.dna?url=3Daboutus -> webdna finds =E2=80=9Eabou=tus" in DB and shows correct siteProblem: Visitor =goes to domain.com/cms/somethingwrong and it shows domain.com/cms.dna?url=3Dsomethingwrong -> webdna does =not find somethingwrong in DB and shows an error-page but the HTTP =status remains 200!Is it possible to set the HTTP-Status Code with webdna? In =this case to 404 in other cases to something else. Or how would you =solve that problem?Thanks!Noah Valley
mac&web =gmbh
S=C3=A4ntistrasse 13
8200 =schaffhausen
switzerland
Tel =+41 52 620 30 60
Fax +41 52 620 30 61
valley@mac-web.ch
www.mac-web.ch.To unsubscribe, E-mail to: =div>archives: http://mail.webdna.us/list/talk@webdna.usBug Reporting: support@webdna.us
|
On Mar 24, 2016, at 11:41 AM, Noah Valley <valley@mac-web.ch> =wrote:Brian,Thanks for =your answer!I just dug in the talk@webdna-archives =lookup for =E2=80=9Eredirect" and stumbled over the same explanation =from you from January=E2=80=A6 It helps! Sorry for asking again... =:-SAnother question =now just came up in my head: How do you redirect to files with your =dispatch.tpl?If someone needs the file domain.com/images/image.jpg the server redirect to domain.com/dispatch.tpl?url=3D/images/image.jp or =something, right? how do you redirect that back to the file itself =without getting caught by the url-rewrite again?ThanksNoahAm =24.03.2016 um 17:28 schrieb Brian Burton <brian@burtons.com>:Noah,Similar to you, and =wanting to use pretty URLs I built something similar, but did it a =different way._All_ page requests are caught by a =url-rewrite rule and get sent to dispatch.tplDispatch.tpl has hundreds of rules that decide what page to =show, and uses includes to do it.(this keeps =everything in-house to webdna so i don=E2=80=99t have to go mucking =about in webdna here, and apache there, and linux somewhere else, and =etc=E2=80=A6)Three special circumstances came up that needed special code =to send out proper HTTP status codes:<!=E2=80=94 for page URLS that have =permanently moved (webdna sends out a 302 temporarily moved code on a =redirect) =E2=80=94>[function =name=3D301public][returnraw]HTTP/1.1 301 Moved Permanently[eol]Location: http://www.example.com[link][eol][eol][/returnraw][/function] <!=E2=80=94 I send this to non google/bing/yahoo bots and =other attempting to crawl/copy the entire site=E2=80=94>[function name=3D404hard][returnraw]HTTP/1.0 404 Not Found[eol]Status: 404 Not =Found[eol]Content-type: =text/html[eol][eol]<html>[eol]<body>[eol]<h1>404 Not =Found</h1>[eol]The page that you have requested ([thisurl]) could =not be found.[eol]</body>[eol]</html>[/returnraw][/function]<!=E2=80=94 and finally a pretty 404 page for humans ==E2=80=94>[function name=3D404soft][returnraw]HTTP/1.0 404 Not Found[eol]Status: 404 Not =Found[eol]Content-type: text/html[eol][eol][include =file=3D/404pretty.tpl][/returnraw][/function]Hope this helps-Brian B. BurtonOn Mar 24, 2016, at 10:53 AM, Noah Valley =<valley@mac-web.ch> wrote:Hi =everybody,---------------------------------------------------------This message is sent to you because you are subscribed tothe mailing listThe =Question First: Is it possible to set the HTTP-Status Codes with =webdna?Explanation why we need to do this:I=E2=80==99ve been working with webdna for 3 years now but our our business is =on webdna since the 90ies; using it for a web-cms and custom =web-solutions. We now host about 150 websites on lighttpd.We newly started using "url-rewrite" so we can have custom =urls for our websites. It directs calls from domain.com/cms/something to domain.com/cms.dna?url=3Dsomething.Example: Visitor goes to domain.com/cms/aboutus and it shows domain.com/cms.dna?url=3Daboutus -> webdna finds =E2=80=9Eabou=tus" in DB and shows correct siteProblem: Visitor =goes to domain.com/cms/somethingwrong and it shows domain.com/cms.dna?url=3Dsomethingwrong -> webdna does =not find somethingwrong in DB and shows an error-page but the HTTP =status remains 200!Is it possible to set the HTTP-Status Code with webdna? In =this case to 404 in other cases to something else. Or how would you =solve that problem?Thanks!Noah Valley
mac&web =gmbh
S=C3=A4ntistrasse 13
8200 =schaffhausen
switzerland
Tel =+41 52 620 30 60
Fax +41 52 620 30 61
valley@mac-web.ch
www.mac-web.ch.To unsubscribe, E-mail to: =div>archives: http://mail.webdna.us/list/talk@webdna.usBug Reporting: support@webdna.us
DOWNLOAD WEBDNA NOW!
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...