Version Notes
Supports Magento v1.6 and later
Download this release
Release Info
Developer | Chris Wells |
Extension | Nexcessnet_Turpentine |
Version | 0.6.9 |
Comparing to | |
See all releases |
Code changes from version 0.6.8 to 0.6.9
- app/code/community/Nexcessnet/Turpentine/Block/Catalog/Product/List/Toolbar.php +0 -0
- app/code/community/Nexcessnet/Turpentine/Block/Notices.php +0 -0
- app/code/community/Nexcessnet/Turpentine/Block/Poll/ActivePoll.php +2 -2
- app/code/community/Nexcessnet/Turpentine/Model/Config/Select/LoadBalancing.php +0 -0
- app/code/community/Nexcessnet/Turpentine/Model/Config/Select/Toggle.php +0 -0
- app/code/community/Nexcessnet/Turpentine/etc/cache.xml +0 -0
- app/code/community/Nexcessnet/Turpentine/etc/config.xml +4 -4
- app/code/community/Nexcessnet/Turpentine/etc/config.xml~ +0 -543
- app/code/community/Nexcessnet/Turpentine/misc/uuid.c +0 -0
- app/code/community/Nexcessnet/Turpentine/misc/version-4.vcl +1 -1
- app/design/adminhtml/default/default/layout/turpentine.xml +0 -0
- app/design/adminhtml/default/default/template/turpentine/varnish_management.phtml +0 -0
- app/design/frontend/base/default/template/turpentine/ajax.phtml +0 -0
- app/design/frontend/base/default/template/turpentine/esi.phtml +0 -0
- app/design/frontend/base/default/template/turpentine/notices.phtml +0 -0
- app/etc/modules/Nexcessnet_Turpentine.xml +0 -0
- package.xml +1 -1
app/code/community/Nexcessnet/Turpentine/Block/Catalog/Product/List/Toolbar.php
CHANGED
File without changes
|
app/code/community/Nexcessnet/Turpentine/Block/Notices.php
CHANGED
File without changes
|
app/code/community/Nexcessnet/Turpentine/Block/Poll/ActivePoll.php
CHANGED
@@ -19,13 +19,13 @@
|
|
19 |
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
20 |
*/
|
21 |
|
22 |
-
class
|
23 |
|
24 |
public function setTemplate($template)
|
25 |
{
|
26 |
$this->_template = $template;
|
27 |
$this->setPollTemplate('turpentine/ajax.phtml', 'poll');
|
28 |
-
$this->setPollTemplate('turpentine/ajax.phtml', 'results');
|
29 |
return $this;
|
30 |
}
|
31 |
}
|
19 |
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
20 |
*/
|
21 |
|
22 |
+
class Nexcessnet_Turpentine_Block_Poll_ActivePoll extends Mage_Poll_Block_ActivePoll {
|
23 |
|
24 |
public function setTemplate($template)
|
25 |
{
|
26 |
$this->_template = $template;
|
27 |
$this->setPollTemplate('turpentine/ajax.phtml', 'poll');
|
28 |
+
$this->setPollTemplate('turpentine/ajax.phtml', 'results');
|
29 |
return $this;
|
30 |
}
|
31 |
}
|
app/code/community/Nexcessnet/Turpentine/Model/Config/Select/LoadBalancing.php
CHANGED
File without changes
|
app/code/community/Nexcessnet/Turpentine/Model/Config/Select/Toggle.php
CHANGED
File without changes
|
app/code/community/Nexcessnet/Turpentine/etc/cache.xml
CHANGED
File without changes
|
app/code/community/Nexcessnet/Turpentine/etc/config.xml
CHANGED
@@ -20,7 +20,7 @@
|
|
20 |
<config>
|
21 |
<modules>
|
22 |
<Nexcessnet_Turpentine>
|
23 |
-
<version>0.6.
|
24 |
</Nexcessnet_Turpentine>
|
25 |
</modules>
|
26 |
<default>
|
@@ -53,9 +53,9 @@
|
|
53 |
<backend_host>127.0.0.1</backend_host>
|
54 |
<backend_port>8080</backend_port>
|
55 |
<backend_nodes>127.0.0.1:8080</backend_nodes>
|
56 |
-
<backend_probe_url
|
57 |
<backend_nodes_admin>127.0.0.1:8080</backend_nodes_admin>
|
58 |
-
<backend_probe_url_admin
|
59 |
<frontend_timeout>300</frontend_timeout>
|
60 |
<admin_timeout>21600</admin_timeout>
|
61 |
<crawlers>127.0.0.1</crawlers>
|
@@ -477,7 +477,7 @@
|
|
477 |
<observers>
|
478 |
<wishlist_index_index_before>
|
479 |
<class>turpentine/observer_esi</class>
|
480 |
-
|
481 |
</wishlist_index_index_before>
|
482 |
</observers>
|
483 |
</wishlist_index_index_before>
|
20 |
<config>
|
21 |
<modules>
|
22 |
<Nexcessnet_Turpentine>
|
23 |
+
<version>0.6.9</version>
|
24 |
</Nexcessnet_Turpentine>
|
25 |
</modules>
|
26 |
<default>
|
53 |
<backend_host>127.0.0.1</backend_host>
|
54 |
<backend_port>8080</backend_port>
|
55 |
<backend_nodes>127.0.0.1:8080</backend_nodes>
|
56 |
+
<backend_probe_url/>
|
57 |
<backend_nodes_admin>127.0.0.1:8080</backend_nodes_admin>
|
58 |
+
<backend_probe_url_admin/>
|
59 |
<frontend_timeout>300</frontend_timeout>
|
60 |
<admin_timeout>21600</admin_timeout>
|
61 |
<crawlers>127.0.0.1</crawlers>
|
477 |
<observers>
|
478 |
<wishlist_index_index_before>
|
479 |
<class>turpentine/observer_esi</class>
|
480 |
+
<method>hookToAddToWishlistBefore</method>
|
481 |
</wishlist_index_index_before>
|
482 |
</observers>
|
483 |
</wishlist_index_index_before>
|
app/code/community/Nexcessnet/Turpentine/etc/config.xml~
DELETED
@@ -1,543 +0,0 @@
|
|
1 |
-
<?xml version="1.0"?>
|
2 |
-
<!--
|
3 |
-
Nexcess.net Turpentine Extension for Magento
|
4 |
-
Copyright (C) 2012 Nexcess.net L.L.C.
|
5 |
-
|
6 |
-
This program is free software; you can redistribute it and/or modify
|
7 |
-
it under the terms of the GNU General Public License as published by
|
8 |
-
the Free Software Foundation; either version 2 of the License, or
|
9 |
-
(at your option) any later version.
|
10 |
-
|
11 |
-
This program is distributed in the hope that it will be useful,
|
12 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14 |
-
GNU General Public License for more details.
|
15 |
-
|
16 |
-
You should have received a copy of the GNU General Public License along
|
17 |
-
with this program; if not, write to the Free Software Foundation, Inc.,
|
18 |
-
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
19 |
-
-->
|
20 |
-
<config>
|
21 |
-
<modules>
|
22 |
-
<Nexcessnet_Turpentine>
|
23 |
-
<version>0.6.7</version>
|
24 |
-
</Nexcessnet_Turpentine>
|
25 |
-
</modules>
|
26 |
-
<default>
|
27 |
-
<turpentine_varnish>
|
28 |
-
<general>
|
29 |
-
<auto_apply_on_save>1</auto_apply_on_save>
|
30 |
-
<strip_vcl_whitespace>always</strip_vcl_whitespace>
|
31 |
-
<varnish_debug>0</varnish_debug>
|
32 |
-
<vcl_fix>1</vcl_fix>
|
33 |
-
<block_debug>0</block_debug>
|
34 |
-
<ajax_messages>1</ajax_messages>
|
35 |
-
<fix_product_toolbar>0</fix_product_toolbar>
|
36 |
-
<crawler_enable>0</crawler_enable>
|
37 |
-
<crawler_debug>0</crawler_debug>
|
38 |
-
</general>
|
39 |
-
<logging>
|
40 |
-
<use_custom_log_file>0</use_custom_log_file>
|
41 |
-
<custom_log_file_name>turpentine.log</custom_log_file_name>
|
42 |
-
</logging>
|
43 |
-
<servers>
|
44 |
-
<version>auto</version>
|
45 |
-
<server_list>127.0.0.1:6082</server_list>
|
46 |
-
<config_file>{{root_dir}}/var/default.vcl</config_file>
|
47 |
-
<custom_include_file>{{root_dir}}/app/code/community/Nexcessnet/Turpentine/misc/custom_include.vcl</custom_include_file>
|
48 |
-
</servers>
|
49 |
-
</turpentine_varnish>
|
50 |
-
<turpentine_vcl>
|
51 |
-
<backend>
|
52 |
-
<load_balancing>no</load_balancing>
|
53 |
-
<backend_host>127.0.0.1</backend_host>
|
54 |
-
<backend_port>8080</backend_port>
|
55 |
-
<backend_nodes>127.0.0.1:8080</backend_nodes>
|
56 |
-
<backend_probe_url></backend_probe_url>
|
57 |
-
<backend_nodes_admin>127.0.0.1:8080</backend_nodes_admin>
|
58 |
-
<backend_probe_url_admin></backend_probe_url_admin>
|
59 |
-
<frontend_timeout>300</frontend_timeout>
|
60 |
-
<admin_timeout>21600</admin_timeout>
|
61 |
-
<crawlers>127.0.0.1</crawlers>
|
62 |
-
<crawler_user_agents><![CDATA[ApacheBench/.*,.*Googlebot.*,JoeDog/.*Siege.*,magespeedtest\.com,Nexcessnet_Turpentine/.*]]></crawler_user_agents>
|
63 |
-
</backend>
|
64 |
-
<normalization>
|
65 |
-
<encoding>1</encoding>
|
66 |
-
<user_agent>0</user_agent>
|
67 |
-
<host>0</host>
|
68 |
-
</normalization>
|
69 |
-
<ttls>
|
70 |
-
<grace_period>15</grace_period>
|
71 |
-
<default_ttl>3600</default_ttl>
|
72 |
-
<static_ttl>28800</static_ttl>
|
73 |
-
<!--
|
74 |
-
<lru_factor>15</lru_factor>
|
75 |
-
-->
|
76 |
-
</ttls>
|
77 |
-
<urls>
|
78 |
-
<url_blacklist><![CDATA[cron\.php]]></url_blacklist>
|
79 |
-
</urls>
|
80 |
-
<params>
|
81 |
-
<get_params>__SID,XDEBUG_PROFILE</get_params>
|
82 |
-
<ignore_get_params>utm_source,utm_medium,utm_campaign,utm_content,utm_term,gclid,cx,ie,cof,siteurl</ignore_get_params>
|
83 |
-
<transfer_unmodified_url>0</transfer_unmodified_url>
|
84 |
-
</params>
|
85 |
-
<static>
|
86 |
-
<force_static>1</force_static>
|
87 |
-
<exts>css,js,jpe?g,png,gif,ico,swf</exts>
|
88 |
-
<simple_hash>1</simple_hash>
|
89 |
-
</static>
|
90 |
-
</turpentine_vcl>
|
91 |
-
</default>
|
92 |
-
<global>
|
93 |
-
<!--
|
94 |
-
This disables Magento visitor logging for Turpentine ESI
|
95 |
-
requests. The logging was pointless and caused AJAX blocks to
|
96 |
-
take much more time then they otherwise would to load (most of
|
97 |
-
the time was spent doing database writes)
|
98 |
-
-->
|
99 |
-
<!-- Disabled because if the visitor doesn't have any entries in the
|
100 |
-
visitor log the product comparison block won't work for non-logged-in
|
101 |
-
visitors.
|
102 |
-
@see Mage/Catalog/controllers/Product/CompareController.php#79
|
103 |
-
|
104 |
-
<ignoredModules>
|
105 |
-
<entities>
|
106 |
-
<turpentine/>
|
107 |
-
</entities>
|
108 |
-
</ignoredModules>
|
109 |
-
-->
|
110 |
-
<blocks>
|
111 |
-
<turpentine>
|
112 |
-
<class>Nexcessnet_Turpentine_Block</class>
|
113 |
-
</turpentine>
|
114 |
-
<!--
|
115 |
-
The core/messages block is rewritten because it doesn't use a
|
116 |
-
template we can replace with an ESI include tag, just dumps out a
|
117 |
-
block of hard-coded HTML and also frequently skips the toHtml method
|
118 |
-
|
119 |
-
However, since class rewrites aren't conditional and we only want to
|
120 |
-
do this rewrite if the Enable Flash Messages option is enabled the
|
121 |
-
rewrite is actually added at runtime (controller_front_init_before),
|
122 |
-
see observer_esi::addMessagesBlockRewrite . Leaving this rewrite
|
123 |
-
here but commented out for clarity
|
124 |
-
-->
|
125 |
-
<!--
|
126 |
-
<core>
|
127 |
-
<rewrite>
|
128 |
-
<messages>Nexcessnet_Turpentine_Block_Core_Messages</messages>
|
129 |
-
</rewrite>
|
130 |
-
</core>
|
131 |
-
-->
|
132 |
-
<!--
|
133 |
-
Rewrite the poll ActivePoll block, as it uses its own custom
|
134 |
-
template setting methods.
|
135 |
-
-->
|
136 |
-
<poll>
|
137 |
-
<rewrite>
|
138 |
-
<activePoll>Nexcessnet_Turpentine_Block_Poll_ActivePoll</activePoll>
|
139 |
-
</rewrite>
|
140 |
-
</poll>
|
141 |
-
|
142 |
-
<!--
|
143 |
-
Rewrite the compared and viewed product block. Default behavior returns '' if
|
144 |
-
no items to display, which prevents display of the ESI url, causing caching problems
|
145 |
-
-->
|
146 |
-
<reports>
|
147 |
-
<rewrite>
|
148 |
-
<product_compared>Nexcessnet_Turpentine_Block_Product_Compared</product_compared>
|
149 |
-
<product_viewed>Nexcessnet_Turpentine_Block_Product_Viewed</product_viewed>
|
150 |
-
</rewrite>
|
151 |
-
</reports>
|
152 |
-
|
153 |
-
<adminhtml>
|
154 |
-
<rewrite>
|
155 |
-
<cache_grid>Nexcessnet_Turpentine_Block_Adminhtml_Cache_Grid</cache_grid>
|
156 |
-
</rewrite>
|
157 |
-
</adminhtml>
|
158 |
-
</blocks>
|
159 |
-
<helpers>
|
160 |
-
<turpentine>
|
161 |
-
<class>Nexcessnet_Turpentine_Helper</class>
|
162 |
-
</turpentine>
|
163 |
-
</helpers>
|
164 |
-
<models>
|
165 |
-
<turpentine>
|
166 |
-
<class>Nexcessnet_Turpentine_Model</class>
|
167 |
-
</turpentine>
|
168 |
-
<core>
|
169 |
-
<rewrite>
|
170 |
-
<session>Nexcessnet_Turpentine_Model_Core_Session</session>
|
171 |
-
</rewrite>
|
172 |
-
</core>
|
173 |
-
</models>
|
174 |
-
<cache>
|
175 |
-
<types>
|
176 |
-
<!--
|
177 |
-
These aren't used to actually store anything in Magento's cache,
|
178 |
-
we just use them to signal Varnish to purge it's cache. Note
|
179 |
-
that the type names must match the MAGE_CACHE_NAME constant in
|
180 |
-
the Varnish and ESI helpers.
|
181 |
-
-->
|
182 |
-
<turpentine_pages>
|
183 |
-
<label>Varnish Pages</label>
|
184 |
-
<description>Full pages cached in Varnish (will also flush ESI blocks)</description>
|
185 |
-
<tags>TURPENTINE_FAKE_PAGE_TAG</tags>
|
186 |
-
</turpentine_pages>
|
187 |
-
<turpentine_esi_blocks>
|
188 |
-
<label>Varnish ESI Blocks</label>
|
189 |
-
<description>ESI blocks cached in Varnish (this should not be disabled except for debugging)</description>
|
190 |
-
<!--
|
191 |
-
This is helpful to prevent blocks from being double ESI-
|
192 |
-
included, which ends up resulting in the "ESI processing
|
193 |
-
not enabled" error
|
194 |
-
-->
|
195 |
-
<tags>BLOCK_HTML</tags>
|
196 |
-
</turpentine_esi_blocks>
|
197 |
-
</types>
|
198 |
-
</cache>
|
199 |
-
<events>
|
200 |
-
<!-- Varnish Events -->
|
201 |
-
<http_response_send_before>
|
202 |
-
<observers>
|
203 |
-
<turpentine_varnish_http_response_send_before>
|
204 |
-
<class>turpentine/observer_varnish</class>
|
205 |
-
<method>setCacheFlagHeader</method>
|
206 |
-
</turpentine_varnish_http_response_send_before>
|
207 |
-
</observers>
|
208 |
-
</http_response_send_before>
|
209 |
-
|
210 |
-
<admin_system_config_changed_section_turpentine_varnish>
|
211 |
-
<observers>
|
212 |
-
<turpentine_varnish_admin_system_config_changed_section_turpentine_varnish>
|
213 |
-
<class>turpentine/observer_varnish</class>
|
214 |
-
<method>adminSystemConfigChangedSection</method>
|
215 |
-
</turpentine_varnish_admin_system_config_changed_section_turpentine_varnish>
|
216 |
-
</observers>
|
217 |
-
</admin_system_config_changed_section_turpentine_varnish>
|
218 |
-
<admin_system_config_changed_section_turpentine_vcl>
|
219 |
-
<observers>
|
220 |
-
<turpentine_varnish_admin_system_config_changed_section_turpentine_vcl>
|
221 |
-
<class>turpentine/observer_varnish</class>
|
222 |
-
<method>adminSystemConfigChangedSection</method>
|
223 |
-
</turpentine_varnish_admin_system_config_changed_section_turpentine_vcl>
|
224 |
-
</observers>
|
225 |
-
</admin_system_config_changed_section_turpentine_vcl>
|
226 |
-
|
227 |
-
<!-- ESI Events -->
|
228 |
-
<core_block_abstract_to_html_before>
|
229 |
-
<observers>
|
230 |
-
<turpentine_esi_core_block_abstract_to_html_before>
|
231 |
-
<type>singleton</type>
|
232 |
-
<class>turpentine/observer_esi</class>
|
233 |
-
<method>injectEsi</method>
|
234 |
-
</turpentine_esi_core_block_abstract_to_html_before>
|
235 |
-
</observers>
|
236 |
-
</core_block_abstract_to_html_before>
|
237 |
-
<http_response_send_before>
|
238 |
-
<observers>
|
239 |
-
<turpentine_esi_http_response_send_before>
|
240 |
-
<class>turpentine/observer_esi</class>
|
241 |
-
<method>setFlagHeaders</method>
|
242 |
-
</turpentine_esi_http_response_send_before>
|
243 |
-
<turpentine_esi_replace_form_key_placeholder>
|
244 |
-
<class>turpentine/observer_esi</class>
|
245 |
-
<method>replaceFormKeyPlaceholder</method>
|
246 |
-
</turpentine_esi_replace_form_key_placeholder>
|
247 |
-
</observers>
|
248 |
-
</http_response_send_before>
|
249 |
-
<controller_action_layout_generate_blocks_after>
|
250 |
-
<observers>
|
251 |
-
<turpentine_esi_controller_action_layout_generate_blocks_after>
|
252 |
-
<class>turpentine/observer_esi</class>
|
253 |
-
<method>checkCacheFlag</method>
|
254 |
-
</turpentine_esi_controller_action_layout_generate_blocks_after>
|
255 |
-
</observers>
|
256 |
-
</controller_action_layout_generate_blocks_after>
|
257 |
-
<customer_login>
|
258 |
-
<observers>
|
259 |
-
<turpentine_customer_login_cookie>
|
260 |
-
<class>turpentine/observer_esi</class>
|
261 |
-
<method>setCustomerGroupCookie</method>
|
262 |
-
</turpentine_customer_login_cookie>
|
263 |
-
</observers>
|
264 |
-
</customer_login>
|
265 |
-
<customer_logout>
|
266 |
-
<observers>
|
267 |
-
<turpentine_customer_logout_remove_cookie>
|
268 |
-
<class>turpentine/observer_esi</class>
|
269 |
-
<method>removeCustomerGroupCookie</method>
|
270 |
-
</turpentine_customer_logout_remove_cookie>
|
271 |
-
</observers>
|
272 |
-
</customer_logout>
|
273 |
-
<!--
|
274 |
-
Magento sometimes sees the last URL as being the
|
275 |
-
turpentine/esi/getBlock url, and then redirects to it which is not
|
276 |
-
good. We need to check and intercept it if it happens
|
277 |
-
-->
|
278 |
-
<controller_response_redirect>
|
279 |
-
<observers>
|
280 |
-
<turpentine_esi_controller_response_redirect>
|
281 |
-
<class>turpentine/observer_esi</class>
|
282 |
-
<method>checkRedirectUrl</method>
|
283 |
-
</turpentine_esi_controller_response_redirect>
|
284 |
-
</observers>
|
285 |
-
</controller_response_redirect>
|
286 |
-
|
287 |
-
<!--
|
288 |
-
Load the ESI client cache clear events from stored config at
|
289 |
-
runtime
|
290 |
-
-->
|
291 |
-
<controller_front_init_before>
|
292 |
-
<observers>
|
293 |
-
<turpentine_esi_controller_front_init_before>
|
294 |
-
<class>turpentine/observer_esi</class>
|
295 |
-
<method>loadCacheClearEvents</method>
|
296 |
-
</turpentine_esi_controller_front_init_before>
|
297 |
-
<turpentine_esi_controller_front_init_before2>
|
298 |
-
<class>turpentine/observer_esi</class>
|
299 |
-
<method>addMessagesBlockRewrite</method>
|
300 |
-
</turpentine_esi_controller_front_init_before2>
|
301 |
-
<turpentine_varnish_controller_front_init_before>
|
302 |
-
<class>turpentine/observer_varnish</class>
|
303 |
-
<method>addProductListToolbarRewrite</method>
|
304 |
-
</turpentine_varnish_controller_front_init_before>
|
305 |
-
<turpentine_varnish_fix_cm_redissession_locks>
|
306 |
-
<class>turpentine/observer_varnish</class>
|
307 |
-
<method>fixCmRedisSessionLocks</method>
|
308 |
-
</turpentine_varnish_fix_cm_redissession_locks>
|
309 |
-
<turpentine_esi_set_replace_form_key_flag>
|
310 |
-
<class>turpentine/observer_esi</class>
|
311 |
-
<method>setReplaceFormKeyFlag</method>
|
312 |
-
</turpentine_esi_set_replace_form_key_flag>
|
313 |
-
</observers>
|
314 |
-
</controller_front_init_before>
|
315 |
-
|
316 |
-
<!-- Varnish cache clear events -->
|
317 |
-
<catalog_product_save_commit_after>
|
318 |
-
<observers>
|
319 |
-
<turpentine_varnish_catalog_product_save_commit_after>
|
320 |
-
<class>turpentine/observer_ban</class>
|
321 |
-
<method>banProductPageCache</method>
|
322 |
-
</turpentine_varnish_catalog_product_save_commit_after>
|
323 |
-
</observers>
|
324 |
-
</catalog_product_save_commit_after>
|
325 |
-
<review_save_after>
|
326 |
-
<observers>
|
327 |
-
<turpentine_varnish_review_save_after>
|
328 |
-
<class>turpentine/observer_ban</class>
|
329 |
-
<method>banProductReview</method>
|
330 |
-
</turpentine_varnish_review_save_after>
|
331 |
-
</observers>
|
332 |
-
</review_save_after>
|
333 |
-
<cataloginventory_stock_item_save_after>
|
334 |
-
<observers>
|
335 |
-
<turpentine_varnish_cataloginventory_stock_item_save_after>
|
336 |
-
<class>turpentine/observer_ban</class>
|
337 |
-
<method>banProductPageCacheCheckStock</method>
|
338 |
-
</turpentine_varnish_cataloginventory_stock_item_save_after>
|
339 |
-
</observers>
|
340 |
-
</cataloginventory_stock_item_save_after>
|
341 |
-
<catalog_category_save_commit_after>
|
342 |
-
<observers>
|
343 |
-
<turpentine_varnish_catalog_category_save_commit_after>
|
344 |
-
<class>turpentine/observer_ban</class>
|
345 |
-
<method>banCategoryCache</method>
|
346 |
-
</turpentine_varnish_catalog_category_save_commit_after>
|
347 |
-
</observers>
|
348 |
-
</catalog_category_save_commit_after>
|
349 |
-
<!--
|
350 |
-
This is disabled because it causes broken images on cached pages
|
351 |
-
-->
|
352 |
-
<!--
|
353 |
-
<clean_media_cache_after>
|
354 |
-
<observers>
|
355 |
-
<turpentine_varnish_clean_media_cache_after>
|
356 |
-
<class>turpentine/observer_ban</class>
|
357 |
-
<method>banMediaCache</method>
|
358 |
-
</turpentine_varnish_clean_media_cache_after>
|
359 |
-
</observers>
|
360 |
-
</clean_media_cache_after>
|
361 |
-
<clean_catalog_images_cache_after>
|
362 |
-
<observers>
|
363 |
-
<turpentine_varnish_clean_catalog_images_cache_after>
|
364 |
-
<class>turpentine/observer_ban</class>
|
365 |
-
<method>banCatalogImagesCache</method>
|
366 |
-
</turpentine_varnish_clean_catalog_images_cache_after>
|
367 |
-
</observers>
|
368 |
-
</clean_catalog_images_cache_after>
|
369 |
-
-->
|
370 |
-
<cms_page_save_commit_after>
|
371 |
-
<observers>
|
372 |
-
<turpentine_varnish_cms_page_save_commit_after>
|
373 |
-
<class>turpentine/observer_ban</class>
|
374 |
-
<method>banCmsPageCache</method>
|
375 |
-
</turpentine_varnish_cms_page_save_commit_after>
|
376 |
-
</observers>
|
377 |
-
</cms_page_save_commit_after>
|
378 |
-
<enterprise_cms_revision_save_commit_after>
|
379 |
-
<observers>
|
380 |
-
<turpentine_varnish_enterprise_cms_revision_save_commit_after>
|
381 |
-
<class>turpentine/observer_ban</class>
|
382 |
-
<method>banCmsPageRevisionCache</method>
|
383 |
-
<type>singleton</type>
|
384 |
-
</turpentine_varnish_enterprise_cms_revision_save_commit_after>
|
385 |
-
</observers>
|
386 |
-
</enterprise_cms_revision_save_commit_after>
|
387 |
-
<adminhtml_cache_flush_system>
|
388 |
-
<observers>
|
389 |
-
<turpentine_varnish_adminhtml_cache_flush_system>
|
390 |
-
<class>turpentine/observer_ban</class>
|
391 |
-
<method>banAllCache</method>
|
392 |
-
</turpentine_varnish_adminhtml_cache_flush_system>
|
393 |
-
</observers>
|
394 |
-
</adminhtml_cache_flush_system>
|
395 |
-
<adminhtml_cache_flush_all>
|
396 |
-
<observers>
|
397 |
-
<turpentine_varnish_adminhtml_cache_flush_all>
|
398 |
-
<class>turpentine/observer_ban</class>
|
399 |
-
<method>banAllCache</method>
|
400 |
-
</turpentine_varnish_adminhtml_cache_flush_all>
|
401 |
-
</observers>
|
402 |
-
</adminhtml_cache_flush_all>
|
403 |
-
<adminhtml_cache_refresh_type>
|
404 |
-
<observers>
|
405 |
-
<turpentine_varnish_adminhtml_cache_refresh_type>
|
406 |
-
<class>turpentine/observer_ban</class>
|
407 |
-
<method>banCacheType</method>
|
408 |
-
</turpentine_varnish_adminhtml_cache_refresh_type>
|
409 |
-
</observers>
|
410 |
-
</adminhtml_cache_refresh_type>
|
411 |
-
<!-- Cron/Crawler events -->
|
412 |
-
<turpentine_ban_all_cache>
|
413 |
-
<observers>
|
414 |
-
<turpentine_cron_turpentine_ban_all_cache>
|
415 |
-
<class>turpentine/observer_cron</class>
|
416 |
-
<method>queueAllUrls</method>
|
417 |
-
</turpentine_cron_turpentine_ban_all_cache>
|
418 |
-
</observers>
|
419 |
-
</turpentine_ban_all_cache>
|
420 |
-
</events>
|
421 |
-
</global>
|
422 |
-
<frontend>
|
423 |
-
<routers>
|
424 |
-
<turpentine>
|
425 |
-
<use>standard</use>
|
426 |
-
<args>
|
427 |
-
<module>Nexcessnet_Turpentine</module>
|
428 |
-
<frontName>turpentine</frontName>
|
429 |
-
</args>
|
430 |
-
</turpentine>
|
431 |
-
</routers>
|
432 |
-
<layout>
|
433 |
-
<updates>
|
434 |
-
<!--
|
435 |
-
This file should never be edited by a user since it will
|
436 |
-
be overwritten on extension updates
|
437 |
-
-->
|
438 |
-
<turpentine_esi module="turpentine">
|
439 |
-
<file>turpentine_esi.xml</file>
|
440 |
-
</turpentine_esi>
|
441 |
-
</updates>
|
442 |
-
</layout>
|
443 |
-
<events>
|
444 |
-
<controller_action_predispatch>
|
445 |
-
<observers>
|
446 |
-
<controller_action_before>
|
447 |
-
<class>turpentine/observer_esi</class>
|
448 |
-
<method>hookToControllerActionPreDispatch</method>
|
449 |
-
</controller_action_before>
|
450 |
-
</observers>
|
451 |
-
</controller_action_predispatch>
|
452 |
-
<!--controller_action_postdispatch>
|
453 |
-
<observers>
|
454 |
-
<controller_action_after>
|
455 |
-
<class>turpentine/observer_esi</class>
|
456 |
-
<method>hookToControllerActionPostDispatch</method>
|
457 |
-
</controller_action_after>
|
458 |
-
</observers>
|
459 |
-
</controller_action_postdispatch-->
|
460 |
-
<add_to_cart_before>
|
461 |
-
<observers>
|
462 |
-
<add_to_cart_before>
|
463 |
-
<class>turpentine/observer_esi</class>
|
464 |
-
<method>hookToAddToCartBefore</method>
|
465 |
-
</add_to_cart_before>
|
466 |
-
</observers>
|
467 |
-
</add_to_cart_before>
|
468 |
-
<!--add_to_cart_after>
|
469 |
-
<observers>
|
470 |
-
<add_to_cart_after>
|
471 |
-
<class>turpentine/observer_esi</class>
|
472 |
-
<method>hookToAddToCartAfter</method>
|
473 |
-
</add_to_cart_after>
|
474 |
-
</observers>
|
475 |
-
</add_to_cart_after-->
|
476 |
-
<wishlist_index_index_before>
|
477 |
-
<observers>
|
478 |
-
<wishlist_index_index_before>
|
479 |
-
<class>turpentine/observer_esi</class>
|
480 |
-
><method>hookToAddToWishlistBefore</method>
|
481 |
-
</wishlist_index_index_before>
|
482 |
-
</observers>
|
483 |
-
</wishlist_index_index_before>
|
484 |
-
</events>
|
485 |
-
</frontend>
|
486 |
-
<admin>
|
487 |
-
<routers>
|
488 |
-
<adminhtml>
|
489 |
-
<args>
|
490 |
-
<modules>
|
491 |
-
<turpentine after="Mage_Adminhtml">Nexcessnet_Turpentine</turpentine>
|
492 |
-
</modules>
|
493 |
-
</args>
|
494 |
-
</adminhtml>
|
495 |
-
</routers>
|
496 |
-
</admin>
|
497 |
-
<adminhtml>
|
498 |
-
<layout>
|
499 |
-
<updates>
|
500 |
-
<turpentine module="turpentine">
|
501 |
-
<file>turpentine.xml</file>
|
502 |
-
</turpentine>
|
503 |
-
</updates>
|
504 |
-
</layout>
|
505 |
-
<acl>
|
506 |
-
<resources>
|
507 |
-
<admin>
|
508 |
-
<children>
|
509 |
-
<system>
|
510 |
-
<children>
|
511 |
-
<turpentine translate="title" module="turpentine">
|
512 |
-
<title>Turpentine Varnish Management</title>
|
513 |
-
</turpentine>
|
514 |
-
<config>
|
515 |
-
<children>
|
516 |
-
<turpentine_varnish translate="title" module="turpentine">
|
517 |
-
<title>Turpentine Varnish Options</title>
|
518 |
-
</turpentine_varnish>
|
519 |
-
<turpentine_vcl translate="title" module="turpentine">
|
520 |
-
<title>Turpentine Caching Options</title>
|
521 |
-
</turpentine_vcl>
|
522 |
-
</children>
|
523 |
-
</config>
|
524 |
-
</children>
|
525 |
-
</system>
|
526 |
-
</children>
|
527 |
-
</admin>
|
528 |
-
</resources>
|
529 |
-
</acl>
|
530 |
-
</adminhtml>
|
531 |
-
<crontab>
|
532 |
-
<jobs>
|
533 |
-
<turpentine_crawl_urls>
|
534 |
-
<schedule>
|
535 |
-
<cron_expr>0,10,20,30,40,50 * * * *</cron_expr>
|
536 |
-
</schedule>
|
537 |
-
<run>
|
538 |
-
<model>turpentine/observer_cron::crawlUrls</model>
|
539 |
-
</run>
|
540 |
-
</turpentine_crawl_urls>
|
541 |
-
</jobs>
|
542 |
-
</crontab>
|
543 |
-
</config>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Nexcessnet/Turpentine/misc/uuid.c
CHANGED
File without changes
|
app/code/community/Nexcessnet/Turpentine/misc/version-4.vcl
CHANGED
@@ -390,7 +390,7 @@ sub vcl_deliver {
|
|
390 |
"; domain=" + regsub(req.http.Host, ":\d+$", "");
|
391 |
} else {
|
392 |
# it's a real user, allow sharing of cookies between stores
|
393 |
-
if(req.http.Host ~ "{{normalize_cookie_regex}}") {
|
394 |
set resp.http.Set-Cookie = resp.http.Set-Cookie +
|
395 |
"; domain={{normalize_cookie_target}}";
|
396 |
} else {
|
390 |
"; domain=" + regsub(req.http.Host, ":\d+$", "");
|
391 |
} else {
|
392 |
# it's a real user, allow sharing of cookies between stores
|
393 |
+
if (req.http.Host ~ "{{normalize_cookie_regex}}" && "{{normalize_cookie_regex}}" ~ "..") {
|
394 |
set resp.http.Set-Cookie = resp.http.Set-Cookie +
|
395 |
"; domain={{normalize_cookie_target}}";
|
396 |
} else {
|
app/design/adminhtml/default/default/layout/turpentine.xml
CHANGED
File without changes
|
app/design/adminhtml/default/default/template/turpentine/varnish_management.phtml
CHANGED
File without changes
|
app/design/frontend/base/default/template/turpentine/ajax.phtml
CHANGED
File without changes
|
app/design/frontend/base/default/template/turpentine/esi.phtml
CHANGED
File without changes
|
app/design/frontend/base/default/template/turpentine/notices.phtml
CHANGED
File without changes
|
app/etc/modules/Nexcessnet_Turpentine.xml
CHANGED
File without changes
|
package.xml
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
<?xml version='1.0' encoding='utf-8'?>
|
2 |
-
<package><name>Nexcessnet_Turpentine</name><license uri="http://opensource.org/licenses/GPL-2.0">GPLv2</license><notes>Supports Magento v1.6 and later</notes><time>
|
1 |
<?xml version='1.0' encoding='utf-8'?>
|
2 |
+
<package><name>Nexcessnet_Turpentine</name><license uri="http://opensource.org/licenses/GPL-2.0">GPLv2</license><notes>Supports Magento v1.6 and later</notes><time>10:31:40</time><__packager>build_package.py v0.0.3</__packager><summary>Improves Magento support for Varnish caching and generates 2.1 and 3.0 compatible VCLs.</summary><stability>stable</stability><__commit_hash>e312e93bc8b318ce2068f8febae53f60905d191f</__commit_hash><version>0.6.9</version><extends /><contents><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file hash="a0bd4a5632b369b058c0ec5262e0cc49" name="turpentine.xml" /></dir><dir name="template"><dir name="turpentine"><file hash="b564606032d111537d02c8da63470c39" name="varnish_management.phtml" /></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file hash="d121558e4cd5775b0845ebeec5909b97" name="turpentine_esi.xml" /></dir><dir name="template"><dir name="turpentine"><file hash="b268c48251ccfccf5c775d3e85513584" name="esi.phtml" /><file hash="50798888953fd1550e4347c39e395d0a" name="notices.phtml" /><file hash="02f341fdfd5194752e88cae9933cfcdb" name="ajax.phtml" /></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file hash="58848d4d90973bfd63b466ea181352a5" name="Nexcessnet_Turpentine.xml" /></dir></target><target name="magecommunity"><dir name="Nexcessnet"><dir name="Turpentine"><dir name="controllers"><file hash="9963ddff7c13d5d087aa3dbdffcd1532" name="EsiController.php" /><dir name="Varnish"><file hash="36ed74dba513b500b7a25175d43a4d71" name="ManagementController.php" /></dir><dir name="Adminhtml"><file hash="9ed581279364b21ead6ad07ff951d90e" name="CacheController.php" /></dir></dir><dir name="Helper"><file hash="33855dc76575297ecaf41a8a39a63937" name="Cron.php" /><file hash="c6068752ae71f7fbf58208263d94880d" name="Ban.php" /><file hash="66399790e7dda35e709b346889a21b1b" name="Debug.php" /><file hash="7f156b5d3f3aafd56f8ec67f4d70d436" name="Esi.php" /><file hash="99ec12c46fd42fbfabdb191c4af7fbe6" name="Varnish.php" /><file hash="c1a55b8d3bdb780fcd3315d214e94b01" name="Data.php" /></dir><dir name="misc"><file hash="9c07f16b0d2b692578cc6dab15a11804" name="version-2.vcl" /><file hash="ba5d5c7263cd90eea3785953e3549041" name="uuid.c" /><file hash="f8368123a257cb25ee7db63ec54cce12" name="version-3.vcl" /><file hash="5ee36ff80d532e0669a8db0dade3e4eb" name="version-4.vcl" /></dir><dir name="etc"><file hash="77fe9033596178d6d5c853fd716fa144" name="config.xml" /><file hash="445c765560917715d906012fafd23866" name="system.xml" /><file hash="3b608fbcca3d307833d10604dff23966" name="cache.xml" /></dir><dir name="Block"><file hash="390cf75d04b1b098cad562229b649c2d" name="Notices.php" /><file hash="5584baf2ebba7e0fe7e9491a46a6e4cf" name="Management.php" /><dir name="Adminhtml"><dir name="Cache"><file hash="8265061356f8096fc82c88334b4effc9" name="Grid.php" /></dir></dir><dir name="Poll"><file hash="4b64be7088235d85610892b1dfe6f768" name="ActivePoll.php" /></dir><dir name="Product"><file hash="c86f7e0571583011932b8bad37aa5acd" name="Viewed.php" /><file hash="e907d4de82aba5be25272127674a10e3" name="Compared.php" /></dir><dir name="Catalog"><dir name="Product"><dir name="List"><file hash="ce9fca4c273987759f284fe31c1597f5" name="Toolbar.php" /></dir></dir></dir><dir name="Core"><file hash="2b4c814c8aa426fa586459716d7c2659" name="Messages.php" /></dir></dir><dir name="Model"><file hash="ffd2af1c58782a2086422b2077f00282" name="Session.php" /><dir name="Varnish"><file hash="b264dc1982cef539b8dc2c86aa34c5c3" name="Admin.php" /><dir name="Configurator"><file hash="870922083925f5120e4ec52f279a8870" name="Version4.php" /><file hash="d4d66168e43a62ceab30226b44b9e98b" name="Version2.php" /><file hash="eea0cbf3c779a9d9ce8b38f33aa7d333" name="Abstract.php" /><file hash="c0c0d52175e72b95c059345a31b5de31" name="Version3.php" /></dir><dir name="Admin"><file hash="304cdb4970dec60460433163d5532533" name="Socket.php" /></dir></dir><dir name="PageCache"><dir name="Container"><file hash="6e3b54ae5968af644952b00cd96a3f32" name="Notices.php" /></dir></dir><dir name="Config"><dir name="Select"><file hash="403dcea1f19b377f30af5f89297d9a69" name="Version.php" /><file hash="f411ae6da3c2154e78e0f7e845212166" name="StripWhitespace.php" /><file hash="9348c5e58037fd97d89b84ccab4ef2d0" name="Toggle.php" /><file hash="2a4648995fc87472b2ac33b35a7d69e5" name="LoadBalancing.php" /></dir></dir><dir name="Dummy"><file hash="07e4db6d82110e523d1400dcfec60830" name="Request.php" /></dir><dir name="Shim"><dir name="Mage"><dir name="Core"><file hash="5912fa8ef25346f2a21316d8ea5de867" name="Config.php" /><file hash="ee6924c626916a8edd49b6037809204a" name="Layout.php" /><file hash="85e9e378b8fd0ab504c751a69d0b28a6" name="App.php" /></dir></dir></dir><dir name="Observer"><file hash="ca77c52f1d5338102691573caa308e2c" name="Cron.php" /><file hash="1c6d12a23a14549cbf59be272c922c40" name="Ban.php" /><file hash="4f67e6d7c35891451391b13a0eec9847" name="Debug.php" /><file hash="d92dc22addfd90ed5b929e8cb17b8002" name="Esi.php" /><file hash="16e4975274e8c3454bf2226d5a0558e6" name="Varnish.php" /></dir><dir name="Core"><file hash="e715e7991e7cd8e3081f105b07acf00f" name="Session.php" /></dir></dir></dir></dir></target></contents><dependencies><required><php><min>5.2.13</min><max>6.0.0</max></php></required></dependencies><authors><author><name>Chris Wells</name><user>nexcess_net</user><email>clwells@nexcess.net</email></author><author><name>Alex Headley</name><user>aheadley_nex</user><email>aheadley@nexcess.net</email></author></authors><date>2016-04-21</date><compatibile /><channel>community</channel><description>Turpentine is a Magento extension to improve Magento's compatibility with Varnish, a very-fast caching reverse-proxy. By default, Varnish doesn't cache requests with cookies and Magento sends the frontend cookie with every request causing a (near) zero hit-rate for Varnish's cache. Turpentine provides Varnish configuration files (VCLs) to work with Magento and modifies Magento's behaviour to significantly improve the cache hit rate.</description></package>
|