Blog ini dijalankan memakai WordPress pada domain .com, namun ingin bisa diakses memakai domain .onion dengan isi yang sama, tanpa melakukan banyak perubahan.
Dulu sempat terpikir untuk mempergunakan WP Multisite, tapi setelah dicoba akhirnya dipergunakan cara berikut :
- Seting Tor agar melayani request di port 80 (http) dan 443 (https/ssl)
12345...HiddenServiceDir /var/lib/tor/web_service/HiddenServicePort 80 127.0.0.1:80HiddenServicePort 443 127.0.0.1:443...
Simpan lalu restart Tor - Konfigurasi seting di Nginx agar melayani request pada domain .onion
12345678910111213141516171819202122232425262728293031server {listen 127.0.0.1:443;server_name 6vj7orvl6gmydgjpvjfv6bhuvxopvz3padylly46uaafhjocrcsxyfyd.onion;return 301 http://$server_name$request_uri;}server {listen 127.0.0.1:80;server_name 6vj7orvl6gmydgjpvjfv6bhuvxopvz3padylly46uaafhjocrcsxyfyd.onion www.6vj7orvl6gmydgjpvjfv6bhuvxopvz3padylly46uaafhjocrcsxyfyd.onion;index index.htm index.html index.php;root /dev/null/erawanarifnugroho.com;try_files $uri $uri/ /index.php;client_max_body_size 2000M;location ~ \.php$ {try_files $uri =404;fastcgi_split_path_info ^(.+\.php)(/.+)$;fastcgi_pass unix:/dev/shm/phpe.socket;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}# Deny access to .htaccesslocation ~ /\.ht {deny all;}}
Disini dilakukan redirect semua request https ke http, karena kita tidak memerlukan https pada domain .onion - Konfigurasi wp-config.php atau setingan di WordPress
123456// Avoid LFI in HTTP_HOST headerif (preg_match('/^(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)$/i', $_SERVER['HTTP_HOST']) === FALSE) {die("NOMATCH");}define('WP_SITEURL', 'http://' . $_SERVER['HTTP_HOST']);define('WP_HOME', 'http://' . $_SERVER['HTTP_HOST']);
Disini kita memakai http, supaya link ketika diakses memakai domain .Onion tidak memakai https / tidak memicu error
Hasilnya, blog ini dapat diakses pada dua alamat berikut :