On 16/05/2012, at 9:01 AM, Jorge Román Novalbos wrote:

> I have the plugin compiled.
> 
> Finally I downloaded the sources from 
> https://github.com/shukitchan/trafficserver-plugins/ with the problems fixes.
> 
> Now I'm trying to test the plugin.
> 
> For this test i have created two file:
> 
> - esi.html
> 
> <HTML>
> <BODY>
> The time is: <esi:include src="http://www.example.com/esi.php"/>
> at this very moment.
> </BODY>
> </HTML>
> 
> - esi.php
> 
> <?php
>       echo date('l jS \of F Y h:i:s A');
> ?>
> 
> 
> When i ask for esi.html the date is not displayed, so esi plugin it doesn't 
> work.

Can you post the entire response? Do you get any debug logs when you enable the 
'plugin_esi_intercept' debug tag?

> 
> 
> My question, ¿Do i have to activate the ESI in order to process that url? 
> Sorry, but i can't find much documentation about how to implement ATS with 
> ESI tags.
> 
> P.S: I have activated the plugin in plugin.config
> 
> 
> 
> 
> On 16/05/2012, at 12:22, Jorge Román Novalbos wrote:
> 
>> I am focusing with compile the pluging using the make command and i have 
>> achieved some advances. 
>> 
>> I have installed some packages (libboost1.42-dev and gcc-4.4-locales) and 
>> the error now is:
>> 
>> root@ts1:~/ATS-plugins/trafficserver-plugins/esi# make
>> tsxs -v -I lib -I fetcher/ -C plugin.cc serverIntercept.cc lib/*.cc 
>> fetcher/*.cc -o esi.so
>> compiling plugin.cc -> plugin.lo
>> g++ -I/opt/trafficserver-3.0.4/include -Ilib -Ifetcher/ -g -pipe -Wall 
>> -Werror -O3 -feliminate-unused-debug-symbols -fno-strict-aliasing 
>> -Wno-invalid-offsetof -fpic -c plugin.cc -o plugin.lo
>> En el fichero incluído de /usr/include/c++/4.4/ext/hash_map:60,
>>                de lib/StringHash.h:29,
>>                de lib/EsiProcessor.h:31,
>>                de plugin.cc:34:
>> /usr/include/c++/4.4/backward/backward_warning.h:28:2: error: #warning This 
>> file includes at least one deprecated or antiquated header which may be 
>> removed without further notice at a future date. Please use a non-deprecated 
>> interface with equivalent functionality instead. For a listing of 
>> replacement headers and interfaces, consult the file backward_warning.h. To 
>> disable this warning use -Wno-deprecated.
>> plugin.cc: In function ‘void cacheNodeList(ContData*)’:
>> plugin.cc:453: error: conversión inválida de ‘const sockaddr*’ a ‘unsigned 
>> int’
>> plugin.cc:453: error: conversión inválida de ‘tsapi_cont*’ a ‘int’
>> plugin.cc:453: error: no se puede convertir ‘TSFetchWakeUpOptions’ a 
>> ‘tsapi_cont*’ para el argumento ‘5’ para ‘void TSFetchUrl(const char*, int, 
>> unsigned int, int, tsapi_cont*, TSFetchWakeUpOptions, TSFetchEvent)’
>> Compile failed: g++ -I/opt/trafficserver-3.0.4/include -Ilib -Ifetcher/ -g 
>> -pipe -Wall -Werror -O3 -feliminate-unused-debug-symbols 
>> -fno-strict-aliasing -Wno-invalid-offsetof -fpic -c plugin.cc -o plugin.lo
>> make: *** [all] Error 1
>> 
>> 
>> 
>> I'm debuging the make command with strace but I'm not able to fix the 
>> problem. Some advices?
>> 
>> 
>> On 16/05/2012, at 10:51, Jorge Román Novalbos wrote:
>> 
>>> Hi all, 
>>> 
>>> I'm compiling the ESI plugin in my trafficserver-3.0.4. I downloaded the 
>>> plugins from repository and i have followed the next steps:
>>> 
>>> 1. cd trafficserver-plugins/esi
>>> 2. /opt/trafficserver/bin/tsxs -o esi.so -c serverIntercept.cc
>>> 3 /opt/trafficserver/bin/tsxs -o esi.so -i
>>> 4 edit /opt/trafficserver/etc/trafficserver/plugin.config an add esi.so
>>> 5. Restart trafficserver daemon.
>>> 
>>> 
>>> The traffic_server process never start because can't load the esi plugin. 
>>> The traffic.out show these lines:
>>> 
>>> [May 16 10:31:49.263] Server {47992987118880} ERROR: unable to find 
>>> TSPluginInit function 
>>> '/opt/trafficserver-3.0.4/libexec/trafficserver/esi.so': 
>>> /opt/trafficserver-3.0.4/libexec/trafficserver/esi.so: undefined symbol: 
>>> TSPluginInit
>>> [May 16 10:31:50.361] Manager {140531591419680} ERROR: 
>>> [LocalManager::pollMgmtProcessServer] Server Process terminated due to Sig 
>>> 6: Aborted
>>> [May 16 10:31:50.361] Manager {140531591419680} ERROR:  (last system error 
>>> 2: No such file or directory)
>>> [May 16 10:31:50.361] Manager {140531591419680} ERROR: 
>>> [Alarms::signalAlarm] Server Process was reset
>>> [May 16 10:31:50.361] Manager {140531591419680} ERROR:  (last system error 
>>> 2: No such file or director y)
>>> 
>>> Obviously something is wrong in esi pluging but I don't know if i am doing 
>>> some step wrong.
>>> 
>>> I have tried to use the Makefile file in esi source but never compile. This 
>>> is the error:
>>> 
>>> root@ts1:~/ATS-plugins/trafficserver-plugins/esi# make
>>> tsxs -v -I lib -I fetcher/ -C plugin.cc serverIntercept.cc lib/*.cc 
>>> fetcher/*.cc -o esi.so
>>> compiling plugin.cc -> plugin.lo
>>> g++ -I/opt/trafficserver-3.0.4/include -Ilib -Ifetcher/ -g -pipe -Wall 
>>> -Werror -O3 -feliminate-unused-debug-symbols -fno-strict-aliasing 
>>> -Wno-invalid-offsetof -fpic -c plugin.cc -o plugin.lo
>>> In file included from /usr/include/c++/4.4/ext/hash_map:60,
>>>               from lib/StringHash.h:29,
>>>               from lib/EsiProcessor.h:31,
>>>               from plugin.cc:34:
>>> /usr/include/c++/4.4/backward/backward_warning.h:28:2: error: #warning This 
>>> file includes at least one deprecated or antiquated header which may be 
>>> removed without further notice at a future date. Please use a 
>>> non-deprecated interface with equivalent functionality instead. For a 
>>> listing of replacement headers and interfaces, consult the file 
>>> backward_warning.h. To disable this warning use -Wno-deprecated.
>>> In file included from lib/EsiProcessor.h:35,
>>>               from plugin.cc:34:
>>> lib/Variables.h:29:33: error: boost/noncopyable.hpp: No existe el fichero o 
>>> el directorio
>>> In file included from lib/EsiProcessor.h:35,
>>>               from plugin.cc:34:
>>> lib/Variables.h:38: error: ‘boost’ has not been declared
>>> lib/Variables.h:38: error: expected ‘{’ before ‘noncopyable’
>>> lib/Variables.h:38: error: invalid type in declaration before ‘{’ token
>>> cc1plus: warnings being treated as errors
>>> lib/Variables.h:38: error: extended initializer lists only available with 
>>> -std=c++0x or -std=gnu++0x
>>> lib/Variables.h:40: error: expected primary-expression before ‘public’
>>> lib/Variables.h:40: error: expected ‘}’ before ‘public’
>>> lib/Variables.h:40: error: expected ‘,’ or ‘;’ before ‘public’
>>> lib/Variables.h: In function ‘void EsiLib::populate(const char*, int)’:
>>> lib/Variables.h:60: error: ‘_query_string_parsed’ was not declared in this 
>>> scope
>>> lib/Variables.h:61: error: ‘_parseQueryString’ was not declared in this 
>>> scope
>>> lib/Variables.h:63: error: ‘_query_string’ was not declared in this scope
>>> lib/Variables.h: At global scope:
>>> lib/Variables.h:70: error: non-member function ‘const std::string& 
>>> EsiLib::getValue(const std::string&)’ cannot have cv-qualifier
>>> lib/Variables.h:73: error: non-member function ‘const std::string& 
>>> EsiLib::getValue(const char*, int)’ cannot have cv-qualifier
>>> lib/Variables.h: In function ‘const std::string& EsiLib::getValue(const 
>>> char*, int)’:
>>> lib/Variables.h:75: error: ‘EMPTY_STRING’ was not declared in this scope
>>> lib/Variables.h: At global scope:
>>> lib/Variables.h:88: error: declaration of ‘~EsiLib::Variables’ as non-member
>>> lib/Variables.h:90: error: expected unqualified-id before ‘private’
>>> lib/Variables.h:99: error: storage size of ‘EsiLib::SIMPLE_HEADERS’ isn't 
>>> known
>>> lib/Variables.h:102: error: storage size of ‘EsiLib::SPECIAL_HEADERS’ isn't 
>>> known
>>> lib/Variables.h:105: error: storage size of ‘EsiLib::NORM_SIMPLE_HEADERS’ 
>>> isn't known
>>> lib/Variables.h:106: error: storage size of ‘EsiLib::NORM_SPECIAL_HEADERS’ 
>>> isn't known
>>> lib/Variables.h:114: error: non-member function ‘std::string& 
>>> EsiLib::_toUpperCase(std::string&)’ cannot have cv-qualifier
>>> lib/Variables.h:115: error: non-member function ‘int 
>>> EsiLib::_searchHeaders(const std::string*, const char*, int)’ cannot have 
>>> cv-qualifier
>>> lib/Variables.h:117: error: non-member function ‘bool 
>>> EsiLib::_parseDictVariable(const std::string&, const char*&, int&, const 
>>> char*&, int&)’ cannot have cv-qualifier
>>> lib/Variables.h:150: error: non-member function ‘const std::string& 
>>> EsiLib::_getSubCookieValue(const std::string&, size_t)’ cannot have 
>>> cv-qualifier
>>> lib/Variables.h:154: error: expected declaration before ‘}’ token
>>> lib/Variables.h:99: error: ‘EsiLib::SIMPLE_HEADERS’ defined but not used
>>> lib/Variables.h:102: error: ‘EsiLib::SPECIAL_HEADERS’ defined but not used
>>> lib/Variables.h:105: error: ‘EsiLib::NORM_SIMPLE_HEADERS’ defined but not 
>>> used
>>> lib/Variables.h:106: error: ‘EsiLib::NORM_SPECIAL_HEADERS’ defined but not 
>>> used
>>> Compile failed: g++ -I/opt/trafficserver-3.0.4/include -Ilib -Ifetcher/ -g 
>>> -pipe -Wall -Werror -O3 -feliminate-unused-debug-symbols 
>>> -fno-strict-aliasing -Wno-invalid-offsetof -fpic -c plugin.cc -o plugin.lo
>>> make: *** [all] Error 1
>>> 
>>> 
>>> 
>>> could anybody  help me?
>>> 
>>> 
>>> 
>>> Thanks to all developer for this amaizing software.
>> 
> 

Reply via email to