Skip to content

Commit 05aa4f8

Browse files
Said FathallaSaid Fathalla
authored andcommitted
fix root docs redirections in cdos and asmo #95
1 parent 10c8bbe commit 05aa4f8

2 files changed

Lines changed: 80 additions & 57 deletions

File tree

asmo/.htaccess

Lines changed: 21 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,27 @@ RewriteEngine on
1111
# Directive to ensure *.rdf files served as appropriate content type
1212
AddType application/rdf+xml .owl
1313

14+
# --- Root content negotiation ---
15+
16+
# Rewrite rule to serve HTML content - terms
17+
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
18+
RewriteCond %{HTTP_ACCEPT} text/html [OR]
19+
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
20+
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
21+
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
22+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
23+
RewriteRule ^/?$ https://ocdo.github.io/asmo/ [R=303,NE,L]
24+
25+
# --- term content negotiation ---
26+
# Rewrite rule to serve HTML content - terms
27+
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
28+
RewriteCond %{HTTP_ACCEPT} text/html [OR]
29+
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
30+
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
31+
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
32+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
33+
RewriteRule ^([\w\.\-]+)$ https://ocdo.github.io/asmo/#$1 [R=303,NE,L]
34+
1435
# Versioned content negotiation
1536

1637
## asmo v0.3.0
@@ -28,16 +49,7 @@ RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
2849
RewriteRule ^v0.0.1/?$ https://raw.githubusercontent.com/OCDO/asmo/refs/heads/main/previous-versions/asmo_v001.owl [R=303,L]
2950
RewriteRule ^v0.0.1/?$ https://ocdo.github.io/asmo/versions/v0.0.1/index.html [R=303,L]
3051

31-
# --- Root content negotiation ---
3252

33-
# Rewrite rule to serve HTML content - terms
34-
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
35-
RewriteCond %{HTTP_ACCEPT} text/html [OR]
36-
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
37-
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
38-
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
39-
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
40-
RewriteRule ^([\w\.\-]+)$ https://ocdo.github.io/asmo/#$1 [R=303,NE,L]
4153

4254
# Rewrite rule to serve RDF/XML content
4355
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]

cdos/.htaccess

Lines changed: 59 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -17,98 +17,122 @@ RewriteRule ^$ https://cdos.readthedocs.io/ [R=303,L]
1717

1818
# CDCO
1919

20+
# Root Documentation for Browsers
21+
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
22+
RewriteCond %{HTTP_ACCEPT} text/html [OR]
23+
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
24+
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
25+
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
26+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
27+
RewriteRule ^cdco/?$ https://ocdo.github.io/cdco/ [R=303,L]
28+
2029
# cdco v0.2.0 docs
21-
RewriteRule ^cdco/v0.2.0$ https://ocdo.github.io/cdco/ [R=303,L]
22-
RewriteRule ^cdco/v0.2.0/$ https://ocdo.github.io/cdco/ [R=303,L]
23-
RewriteRule ^cdco/v0.2.0/$ https://ocdo.github.io/cdco/#$1 [R=303,NE,L]
30+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
31+
RewriteRule ^cdco/v0.2.0/?$ https://ocdo.github.io/cdco/ [R=303,L]
32+
33+
# ensure we only match a single term and stop the infinite loop
34+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
35+
RewriteRule ^cdco/([\w\.\-]+)$ https://ocdo.github.io/cdco/#/$1 [R=303,NE,L]
2436

2537
# cdco v0.2.0 owl
2638
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
2739
RewriteRule ^cdco/v0.2.0$ https://raw.githubusercontent.com/OCDO/cdco/main/cdco.owl [R=303,L]
2840
RewriteRule ^cdco/v0.2.0/$ https://raw.githubusercontent.com/OCDO/cdco/main/cdco.owl [R=303,L]
2941

42+
3043
# previous versions owl
3144
# cdco v0.0.1 owl
3245
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
33-
RewriteRule ^cdco/v0.0.1$ https://raw.githubusercontent.com/OCDO/cdco/refs/heads/main/previous-versions/cdco_v001.owl [R=303,L]
34-
RewriteRule ^cdco/v0.0.1/$ https://raw.githubusercontent.com/OCDO/cdco/refs/heads/main/previous-versions/cdco_v001.owl [R=303,L]
46+
RewriteRule ^cdco/v0.0.1/?$ https://raw.githubusercontent.com/OCDO/cdco/refs/heads/main/previous-versions/cdco_v001.owl [R=303,L]
47+
48+
49+
# Rewrite rule to serve RDF/XML content
50+
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]
51+
RewriteCond %{HTTP_ACCEPT} ^.*application/xml.* [OR]
52+
RewriteCond %{HTTP_ACCEPT} ^.*text/xml.*
53+
RewriteRule ^cdco$ https://raw.githubusercontent.com/OCDO/cdco/main/cdco.owl [R=303,NE,L]
3554

36-
# GENERAL TERM REDIRECTION (The "Safety Fix")
37-
# We use [^/]+ to ensure we only match a single term and stop the infinite loop
55+
# PODO
56+
57+
# Root Documentation for Browsers
3858
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
3959
RewriteCond %{HTTP_ACCEPT} text/html [OR]
4060
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
4161
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
4262
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
4363
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
44-
RewriteRule ^cdco/([\w\.\-]+)$ https://ocdo.github.io/cdco/#/$1 [R=303,NE,L]
64+
RewriteRule ^podo/?$ https://ocdo.github.io/podo/#$1 [R=303,NE,L]
4565

46-
# Rewrite rule to serve RDF/XML content
47-
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]
48-
RewriteCond %{HTTP_ACCEPT} ^.*application/xml.* [OR]
49-
RewriteCond %{HTTP_ACCEPT} ^.*text/xml.*
50-
RewriteRule ^cdco$ https://raw.githubusercontent.com/OCDO/cdco/main/cdco.owl [R=303,NE,L]
66+
# ensure we only match a single term and stop the infinite loop
67+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
68+
RewriteRule ^podo/([\w\.\-]+)$ https://ocdo.github.io/podo/#$1 [R=303,NE,L]
5169

52-
# PODO
5370

5471
# podo v1.0.0 docs
55-
RewriteRule ^podo/v1.0.0$ https://ocdo.github.io/podo/ [R=303,L]
56-
RewriteRule ^podo/v1.0.0/$ https://ocdo.github.io/podo/ [R=303,L]
57-
RewriteRule ^podo/v1.0.0/$ https://ocdo.github.io/podo/#$1 [R=303,NE,L]
72+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
73+
RewriteRule ^podo/v1.0.0/?$ https://ocdo.github.io/podo/#$ [R=303,NE,L]
5874

5975
# podo v1.0.0 owl
6076
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
6177
RewriteRule ^podo/v1.0.0$ https://raw.githubusercontent.com/OCDO/podo/main/podo.owl [R=303,L]
6278
RewriteRule ^podo/v1.0.0/$ https://raw.githubusercontent.com/OCDO/podo/main/podo.owl [R=303,L]
6379

64-
# Rewrite rule to serve HTML content - terms
80+
# Rewrite rule to serve RDF/XML content
81+
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]
82+
RewriteCond %{HTTP_ACCEPT} ^.*application/xml.* [OR]
83+
RewriteCond %{HTTP_ACCEPT} ^.*text/xml.*
84+
RewriteRule ^podo$ https://raw.githubusercontent.com/OCDO/podo/main/podo.owl [R=303,NE,L]
85+
86+
# LDO
87+
88+
# Root Documentation for Browsers
6589
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
6690
RewriteCond %{HTTP_ACCEPT} text/html [OR]
6791
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
6892
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
6993
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
7094
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
71-
RewriteRule ^podo/([\w\.\-]+)$ https://ocdo.github.io/podo/#$1 [R=303,NE,L]
95+
RewriteRule ^ldo/?$ https://ocdo.github.io/ldo/#$1 [R=303,NE,L]
96+
97+
# ensure we only match a single term and stop the infinite loop
98+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
99+
RewriteRule ^ldo/([\w\.\-]+)$ https://ocdo.github.io/ldo/#$1 [R=303,NE,L]
72100

73101
# Rewrite rule to serve RDF/XML content
74102
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]
75103
RewriteCond %{HTTP_ACCEPT} ^.*application/xml.* [OR]
76104
RewriteCond %{HTTP_ACCEPT} ^.*text/xml.*
77-
RewriteRule ^podo$ https://raw.githubusercontent.com/OCDO/podo/main/podo.owl [R=303,NE,L]
78-
79-
# LDO
105+
RewriteRule ^ldo$ https://raw.githubusercontent.com/OCDO/ldo/main/ldo.owl [R=303,NE,L]
80106

81107
# ldo v1.0.0 docs
82-
RewriteRule ^ldo/v1.0.0$ https://ocdo.github.io/ldo/ [R=303,L]
83-
RewriteRule ^ldo/v1.0.0/$ https://ocdo.github.io/ldo/ [R=303,L]
84-
RewriteRule ^ldo/v1.0.0/$ https://ocdo.github.io/ldo/#$1 [R=303,NE,L]
108+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
109+
RewriteRule ^ldo/v1.0.0/$ https://ocdo.github.io/ldo/ [R=303,NE,L]
85110

86111
# ldo v1.0.0 owl
87112
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
88113
RewriteRule ^ldo/v1.0.0$ https://raw.githubusercontent.com/OCDO/ldo/main/ldo.owl [R=303,L]
89114
RewriteRule ^ldo/v1.0.0/$ https://raw.githubusercontent.com/OCDO/ldo/main/ldo.owl [R=303,L]
90115

91-
# Rewrite rule to serve HTML content - terms
116+
117+
# PLDO
118+
119+
# Root Documentation for Browsers
92120
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
93121
RewriteCond %{HTTP_ACCEPT} text/html [OR]
94122
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
95123
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
96124
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
97125
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
98-
RewriteRule ^ldo/([\w\.\-]+)$ https://ocdo.github.io/ldo/#$1 [R=303,NE,L]
99-
100-
# Rewrite rule to serve RDF/XML content
101-
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]
102-
RewriteCond %{HTTP_ACCEPT} ^.*application/xml.* [OR]
103-
RewriteCond %{HTTP_ACCEPT} ^.*text/xml.*
104-
RewriteRule ^ldo$ https://raw.githubusercontent.com/OCDO/ldo/main/ldo.owl [R=303,NE,L]
126+
RewriteRule ^pldo/?$ https://ocdo.github.io/pldo/# [R=303,NE,L]
105127

106-
# PLDO
128+
# ensure we only match a single term and stop the infinite loop
129+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
130+
RewriteRule ^pldo/([\w\.\-]+)$ https://ocdo.github.io/pldo/#$1 [R=303,NE,L]
107131

108132
# pldo v0.3.0 docs
133+
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
109134
RewriteRule ^pldo/v0.3.0$ https://ocdo.github.io/pldo/ [R=303,L]
110135
RewriteRule ^pldo/v0.3.0/$ https://ocdo.github.io/pldo/ [R=303,L]
111-
RewriteRule ^pldo/v0.3.0/$ https://ocdo.github.io/pldo/#$1 [R=303,NE,L]
112136

113137
# pldo v0.3.0 owl
114138
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
@@ -126,17 +150,4 @@ RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.*
126150
RewriteRule ^pldo/v0.0.1$ https://raw.githubusercontent.com/OCDO/pldo/refs/heads/main/previous-versions/pldo_v001.owl [R=303,L]
127151
RewriteRule ^pldo/v0.0.1/$ https://raw.githubusercontent.com/OCDO/pldo/refs/heads/main/previous-versions/pldo_v001.owl [R=303,L]
128152

129-
# Rewrite rule to serve HTML content - terms
130-
RewriteCond %{HTTP_ACCEPT} !application/rdf\+xml.*(text/html|application/xhtml\+xml|text/\*|\*/\*)
131-
RewriteCond %{HTTP_ACCEPT} text/html [OR]
132-
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml [OR]
133-
RewriteCond %{HTTP_ACCEPT} text/\* [OR]
134-
RewriteCond %{HTTP_ACCEPT} \*/\* [OR]
135-
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/.*
136-
RewriteRule ^pldo/([\w\.\-]+)$ https://ocdo.github.io/pldo/#$1 [R=303,NE,L]
137153

138-
# Rewrite rule to serve RDF/XML content
139-
RewriteCond %{HTTP_ACCEPT} ^.*application/rdf\+xml.* [OR]
140-
RewriteCond %{HTTP_ACCEPT} ^.*application/xml.* [OR]
141-
RewriteCond %{HTTP_ACCEPT} ^.*text/xml.*
142-
RewriteRule ^pldo$ https://raw.githubusercontent.com/OCDO/pldo/main/pldo.owl [R=303,NE,L]

0 commit comments

Comments
 (0)