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. 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. >