Deprecated: Function register_sidebar_widget is deprecated since version 2.8.0! Use wp_register_sidebar_widget() instead. in /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php on line 6078 Deprecated: Function register_widget_control is deprecated since version 2.8.0! Use wp_register_widget_control() instead. in /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php on line 6078 Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 22 Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/src/conditionals/third-party/elementor-edit-conditional.php on line 28 Warning: Constant FORCE_SSL_ADMIN already defined in /mnt/web221/b1/51/512220951/htdocs/wp-config.php on line 94 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Deprecated: Return type of Yoast\WP\Lib\Model::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/lib/model.php on line 560 Deprecated: Return type of Yoast\WP\Lib\ORM::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/lib/orm.php on line 2457 Deprecated: Return type of Yoast\WP\Lib\ORM::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/lib/orm.php on line 2468 Deprecated: Return type of Yoast\WP\Lib\ORM::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/lib/orm.php on line 2478 Deprecated: Return type of Yoast\WP\Lib\ORM::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/lib/orm.php on line 2490

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '206' AND `object_type` = 'post' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '206' AND `object_type` = 'post' LIMIT 1

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/src/builders/indexable-post-builder.php on line 125 Deprecated: Automatic conversion of false to array is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/inc/class-wpseo-image-utils.php on line 190 Deprecated: Automatic conversion of false to array is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/inc/class-wpseo-image-utils.php on line 190

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_primary_term' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_primary_term` WHERE `post_id` = '206' AND `taxonomy` = 'category' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_primary_term' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_primary_term` WHERE `post_id` = '206' AND `taxonomy` = 'category' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable_hierarchy' doesn't exist]
DELETE FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `indexable_id` = NULL

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '1' AND `object_type` = 'user' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_id` = '1' AND `object_type` = 'user' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` = '1' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` = '1' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` IS NULL LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT `id` FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'post' AND `object_sub_type` IN ('post') AND `author_id` = '1' AND `is_public` IS NULL LIMIT 1

Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/src/models/indexable.php on line 167

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
INSERT INTO `yoast_wp_seo_models_indexable` (`object_type`, `object_id`, `permalink`, `title`, `description`, `is_cornerstone`, `is_robots_noindex`, `is_robots_nofollow`, `is_robots_noarchive`, `is_robots_noimageindex`, `is_robots_nosnippet`, `is_public`, `has_public_posts`, `blog_id`, `open_graph_image`, `open_graph_image_id`, `open_graph_image_source`, `open_graph_image_meta`, `twitter_image`, `twitter_image_id`, `twitter_image_source`, `version`, `permalink_hash`, `created_at`, `updated_at`) VALUES ('user', '1', 'https://www.rickroetenberg.com/author/admin/', NULL, NULL, '0', '0', NULL, NULL, NULL, NULL, NULL, '0', '1', 'https://secure.gravatar.com/avatar/bc3d8afa4c08e3c680ab5b8233ba4b80?s=500&d=mm&r=g', NULL, 'gravatar-image', NULL, 'https://secure.gravatar.com/avatar/bc3d8afa4c08e3c680ab5b8233ba4b80?s=500&d=mm&r=g', NULL, 'gravatar-image', '1', '44:d0c42e6c0b758b5b57289e1ac097bf08', '2024-05-03 14:53:10', '2024-05-03 14:53:10')

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
INSERT INTO `yoast_wp_seo_models_indexable` (`object_type`, `object_id`, `object_sub_type`, `permalink`, `primary_focus_keyword_score`, `readability_score`, `is_cornerstone`, `is_robots_noindex`, `is_robots_nofollow`, `is_robots_noimageindex`, `is_robots_noarchive`, `is_robots_nosnippet`, `open_graph_image`, `open_graph_image_id`, `open_graph_image_source`, `open_graph_image_meta`, `twitter_image`, `twitter_image_id`, `twitter_image_source`, `primary_focus_keyword`, `canonical`, `title`, `description`, `breadcrumb_title`, `open_graph_title`, `open_graph_description`, `twitter_title`, `twitter_description`, `estimated_reading_time_minutes`, `author_id`, `post_parent`, `number_of_pages`, `post_status`, `is_protected`, `is_public`, `has_public_posts`, `blog_id`, `schema_page_type`, `schema_article_type`, `version`, `has_ancestors`, `permalink_hash`, `created_at`, `updated_at`) VALUES ('post', '206', 'post', 'https://www.rickroetenberg.com/citrix-netscaler-as-forward-proxy/', '84', '0', '0', NULL, '0', NULL, NULL, NULL, 'https://www.rickroetenberg.com/wp-content/uploads/Citrix_ForwardProxy_101003-e1422195330386.jpg', '210', 'featured-image', '{\"width\":451,\"height\":174,\"url\":\"https://www.rickroetenberg.com/wp-content/uploads/Citrix_ForwardProxy_101003-e1422195330386.jpg\",\"path\":\"/mnt/web221/b1/51/512220951/htdocs/wp-content/uploads/Citrix_ForwardProxy_101003-e1422195330386.jpg\",\"size\":\"full\",\"id\":210,\"alt\":\"\",\"pixels\":78474,\"type\":\"image/jpeg\"}', 'https://www.rickroetenberg.com/wp-content/uploads/Citrix_ForwardProxy_101003-e1422195330386.jpg', '210', 'featured-image', 'Citrix NetScaler as Forward Proxy', NULL, NULL, 'Citrix NetScaler Forward Proxy, NetScaler, Citrix, forward proxy, Citrix NetScaler, Cache redirection, Load Balancing, Citrix NetScaler as Forward Proxy', 'Citrix NetScaler as Forward Proxy', NULL, NULL, NULL, NULL, NULL, '1', '0', NULL, 'publish', '0', NULL, NULL, '1', NULL, NULL, '1', '', '65:cfd2ada95e9aca1d457bef1ea864f3c3', '2024-05-03 14:53:10', '2024-05-03 14:53:10')

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'home-page' LIMIT 1

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
SELECT * FROM `yoast_wp_seo_models_indexable` WHERE `object_type` = 'home-page' LIMIT 1

Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/src/models/indexable.php on line 167

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable' doesn't exist]
INSERT INTO `yoast_wp_seo_models_indexable` (`object_type`, `title`, `breadcrumb_title`, `permalink`, `blog_id`, `description`, `is_robots_noindex`, `open_graph_title`, `open_graph_image`, `open_graph_image_id`, `open_graph_description`, `open_graph_image_source`, `open_graph_image_meta`, `version`, `permalink_hash`, `created_at`, `updated_at`) VALUES ('home-page', '%%sitename%% %%page%% %%sep%% %%sitedesc%%', 'Home', 'https://www.rickroetenberg.com/', '1', 'Technical Consultant', '0', '%%sitename%%', '', '0', '', NULL, NULL, '1', '31:7850956d7f1a75f01d7a0f54a38d6390', '2024-05-03 14:53:10', '2024-05-03 14:53:10')

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable_hierarchy' doesn't exist]
SELECT `ancestor_id` FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `indexable_id` = '0' ORDER BY `depth` DESC

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable_hierarchy' doesn't exist]
SELECT `ancestor_id` FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `indexable_id` = '0' ORDER BY `depth` DESC

WordPress database error: [Table 'dbs9686871.yoast_wp_seo_models_indexable_hierarchy' doesn't exist]
DELETE FROM `yoast_wp_seo_models_indexable_hierarchy` WHERE `indexable_id` = '0'

Deprecated: strtolower(): Passing null to parameter #1 ($string) of type string is deprecated in /mnt/web221/b1/51/512220951/htdocs/wp-content/plugins/wordpress-seo/src/generators/schema-generator.php on line 176 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 Warning: Cannot modify header information - headers already sent by (output started at /mnt/web221/b1/51/512220951/htdocs/wp-includes/functions.php:6078) in /mnt/web221/b1/51/512220951/htdocs/wp-includes/rest-api/class-wp-rest-server.php on line 1831 {"id":206,"date":"2015-01-26T09:00:12","date_gmt":"2015-01-26T08:00:12","guid":{"rendered":"http:\/\/www.rickroetenberg.com\/?p=206"},"modified":"2015-01-26T09:12:18","modified_gmt":"2015-01-26T08:12:18","slug":"citrix-netscaler-as-forward-proxy","status":"publish","type":"post","link":"https:\/\/www.rickroetenberg.com\/citrix-netscaler-as-forward-proxy\/","title":{"rendered":"Citrix NetScaler as Forward Proxy"},"content":{"rendered":"

In this blog I will describe how to configure the Citrix NetScaler as Forward Proxy. This installation\/screenshots are\u00a0based on an NetScaler VPX 1000 Platinum license, so there could be some slide differents between the screenshots. The Citrix NetScaler is a good product for replacing Microsoft TMG. Microsoft TMG is end-of-life so customers a searching for another solution. Besides Forward Proxy the Citrix NetScaler could also be an Reserve Proxy. This will be explained in another blog shortly.<\/p>\n

<\/p>\n

In order to use the Citrix NetScaler as forward proxy you should have at least the NetScaler Enterprise or NetScaler Platinum edition license available, because the cache redirection feature needs to configured for this.<\/p>\n

Configure Citrix NetScaler as Forward Proxy<\/strong><\/span><\/h2>\n

Enable Feature<\/strong><\/h3>\n

\"ForwardProxy<\/strong>Select System, Settings, Configure Advanced Fea<\/strong>tures<\/strong><\/p>\n

\"ForwardProxySelect at least\u00a0Cache Redirection <\/strong>and click OK<\/strong><\/p>\n

\"ForwardProxySelect Configure Basic Features<\/strong><\/p>\n

\"ForwardProxySelect at least Content Filter <\/strong>and Load Balancing <\/strong>and click OK<\/strong><\/p>\n

Create DNS Load Balancing<\/strong><\/h2>\n

The Cache Redirection Feature requires an DNS Load Balancing VIP in order to work. So this is the first step.<\/p>\n

\"ForwardProxySelect Traffic Management, Load Balancing, Servers<\/strong><\/p>\n

\"ForwardProxyClick Add<\/strong><\/p>\n

\"ForwardProxy\u00a0<\/strong>Server Name: <\/strong>I used ExternalGateway because I have just one DNS server in my homelab.
\nIPAddress: <\/strong>Enter the IPAddress of the DNS server<\/span><\/p>\n

Create for every DNS server you want to use an Server.<\/p>\n

\"ForwardProxySelect Service Group<\/strong><\/p>\n

\"ForwardProxyClick Add<\/strong><\/p>\n

\"ForwardProxyName: <\/strong>DNSServer (choose the Name you want)
\nProtocol<\/strong>: DNS<\/span><\/p>\n

Click OK<\/strong><\/p>\n

\"ForwardProxyClick on Members <\/strong>under Advanced<\/strong> on the right side<\/p>\n

\"ForwardProxyClick on No Service Group Member<\/strong><\/p>\n

\"ForwardProxySelect Server Based
\n<\/strong>Server Name:<\/strong>\u00a0select at least one of the created Servers.
\nPort<\/strong>: 53<\/p>\n

Click Create<\/strong><\/p>\n

If you want to add more, select x Service Group Member(s) and repeat above steps!! Else click Done<\/strong><\/p>\n

\u00a0<\/strong>\"ForwardProxy<\/strong><\/p>\n

Select Virtual Servers<\/strong><\/p>\n

\"ForwardProxyClick Add<\/strong><\/p>\n

\"ForwardProxy<\/strong><\/p>\n

Name: ExternalDNS (or something else)
\n<\/strong>Protocol: DNS
\n<\/strong>IP Address Type: Non Addressable<\/strong>\u00a0<\/strong><\/p>\n

Click OK<\/strong><\/p>\n

I selected Non Addressable because I don\u2019t have to have access to this Load Balancing DNS Virtual Server outside the Citrix NetScaler<\/strong><\/p>\n

\"ForwardProxy\u00a0<\/strong>Click OK<\/strong><\/p>\n

\"ForwardProxyClick on Service Group\u00a0<\/strong>under Advanced<\/strong> on the right side<\/p>\n

\"ForwardProxyClick on No Load Balancing Virtual Server ServiceGroup Binding<\/strong><\/p>\n

\"ForwardProxyClick on Click to select<\/strong><\/p>\n

\"ForwardProxySelect DNSServer <\/strong>(or the name you choose in the above steps)
\nClick OK<\/strong><\/p>\n

\"ForwardProxyClick on Bind<\/strong><\/p>\n

\"ForwardProxyClick Done<\/strong><\/p>\n

Create Cache Redirection Server\u00a0<\/strong>\u00a0<\/strong><\/h2>\n

Now we can create an cache redirection server<\/strong><\/p>\n

\"ForwardProxySelect Traffic Management, Cache Redirection, Virtual Servers<\/strong>\u00a0<\/strong><\/p>\n

\"ForwardProxyClick Add<\/strong>\u00a0<\/strong><\/p>\n

\"ForwardProxy<\/strong><\/p>\n

Name<\/strong>: The Virtual Server Name you like
\nProtocol: <\/strong>HTTP
\nIP Address: <\/strong>The IP Address the Virtual Server should respond on (this IP Address needs to be configured on the clients as well)
\nPort: <\/strong>The Port the Virtual Server should respond on
\nCache Type: <\/strong>FORWARD<\/p>\n

Click OK<\/strong><\/p>\n

\"ForwardProxyClick on Policies <\/strong>under Advanced<\/strong> on the right side<\/p>\n

\"ForwardProxyClick on To add, please click on the + icon<\/strong>\u00a0<\/strong><\/p>\n

\"ForwardProxyChoose Policy: Filter<\/strong><\/p>\n

Click\u00a0Continue<\/strong><\/p>\n

I choose Filter as policy because I want to create rules which server as access to a particular website.<\/strong><\/h3>\n

\"ForwardProxyClick Click to select <\/strong>to bind policies<\/p>\n

\"ForwardProxyClick Add<\/strong>\u00a0<\/strong><\/p>\n

\"ForwardProxyFilter Name: <\/strong>Dropsites
\nExpression: <\/strong>REQ.HTTP.HEADER Host NOTCONTAINS www.rickroetenberg.com
\nRequest Action: <\/strong>Drop<\/p>\n

With this expression every request will be dropped by the NetScaler unless you requesting www.rickroetenberg.com<\/a><\/p>\n

Another example:
\nREQ.HTTP.HEADER Host CONTAINS www.rickroetenberg.com && REQ.IP.SOURCEIP == 10.0.0.102<\/p>\n

In this example\u00a0www.rickroetenberg.com<\/a> will be dropped on the server with IP 10.0.0.102. All other servers\/workstation which use the Citrix NetScaler as proxy will be allowed the visit every website.<\/p>\n

Click Create\"ForwardProxy <\/strong>Click OK<\/strong><\/p>\n

\"ForwardProxyClick Bind<\/strong><\/p>\n

\"ForwardProxyClick Done<\/strong><\/p>\n

If you follow this blog you can config the Citrix NetScaler as forward proxy.<\/strong><\/h4>\n","protected":false},"excerpt":{"rendered":"

In this blog I will describe how to configure the Citrix NetScaler as Forward Proxy. This installation\/screenshots are\u00a0based on an NetScaler VPX 1000 Platinum license, so there could be some slide differents between the screenshots. The Citrix NetScaler is a good product for replacing Microsoft TMG. Microsoft TMG is end-of-life so customers a searching for…<\/p>\n