Redirect to domain TTFB very slow
Steve Holdoway
steve at greengecko.co.nz
Tue Dec 30 23:59:59 UTC 2014
On Tue, 2014-12-30 at 18:34 -0500, ASTRAPI wrote:
> Hi
>
> On my Nginx server i use a domain "domain.com" and i have all files here:
>
> /home/nginxs/domains/mydomain.com/public
>
>
> There i have a folder named "gadgets" and i have some files there and i use
> a redirect to another domain for this folder.
>
> So if a user types seconddomain.com it goes to the folder gadgets in the
> first domains folder and get al results.....
>
> The problem is that is very slow (first domain is loading super fast !) and
> then checking i found this :
>
> So Time to first byte is very slow 6 seconds :(
>
> No idea how can fix this :(
>
> And i can't move that folder to the new created account that i redirect as
> the files inside gadgets are interacting with other files there from main
> account.....
>
> second domain config:
>
> server {
> listen 80;
> server_name mydomain.com;
> return 301 $scheme://www.mydomain.com$request_uri;
> }
> server {
> listen 80;
> server_name blog.mydomain.com;
> root /home/nginx/domains/firstdomain/public/blog;
> index index.php;
> access_log /var/log/nginx/blog.gogadget.gr_access.log;
> error_log /var/log/nginx/blog.gogadget.gr_error.log;
> location / {
> try_files $uri $uri/ /index.html /index.php?$args;
> }
> }
> server {
> listen 80;
> server_name www.mydomain.com dev.mydomain.com;
> root /home/nginx/domains/firstdomain.com/public;
> index index.php;
> access_log /var/log/nginx/mydomain.com_access.log;
> error_log /var/log/nginx/mydomain.com_error.log;
> location /go {
> return 301 http://www.mydomain.com/;
> }
> location / {
> try_files $uri $uri/ /index.html /index.php?$args;
> }
> location /blog/ {
> deny all;
> }
> error_page 500 502 504 /500.html;
> location ~*
> ^.+\.(?:css|cur|js|jpg|jpeg|gif|ico|png|html|xml|zip|rar|mp4|3gp|flv|webm|f4v|ogm)$
> {
> access_log off;
> expires 30d;
> tcp_nodelay off;
> open_file_cache max=3000 inactive=120s;
> open_file_cache_valid 45s;
> open_file_cache_min_uses 2;
> open_file_cache_errors off;
> }
> location /api2/ {
> rewrite ^/api2/(.*)$ /api/public/index.php?route=$1 last;
> }
> location ~* /(uploads|public)/ {
> access_log off;
> expires 30d;
> }
> location ~ /\.ht {
> deny all;
> }
> include /usr/local/nginx/conf/staticfiles.conf;
> include /usr/local/nginx/conf/php.conf;
> include /usr/local/nginx/conf/drop.conf;
> include /usr/local/nginx/conf/block.conf;
> #include /usr/local/nginx/conf/errorpage.conf;
> }
>
> Any ideas?
>
> I am using ZendOpcache and Memcached...
>
do you mean mydomain.com forwarding to www.mydomain.com (your
anonymising is rather confusing)? This is the real TTFB, rather than the
nginx redirect. To address that, you need to tune the server resources,
allocating enough to the database and php-fpm.
Assuming a virtual server, the most important thing to do is to avoid
using disks wherever possible, which means allocating plenty of mem to
the database ( also look at maybe using Percona and innodb to improve
performance ), and caching whatever you can... If not using the latest
versions of PHP, look at using APC as well ( start simple! ) and I find
that redis performs better than memcached, but a tmpfs backed file
system often is better than both ( on a single server platform ).
Temporarily using something like new relic may also help you pinpoint
your bottlenecks.
If I've misunderstood, then maybe it's a DNS problem? Try ensuring all
domain names are set in /etc/hosts ( and maybe set them to something in
the 127.0.0.0/8 subnet to ensure no extra external traffic.
But it's unlikely to be a nginx problem.
hth
Steve
--
Steve Holdoway BSc(Hons) MIITP
http://www.greengecko.co.nz
Linkedin: http://www.linkedin.com/in/steveholdoway
Skype: sholdowa
More information about the nginx
mailing list