Joomla用Nginx和PHP-FPM加载10秒以上

我一直试图排除基于Joomla的testing网站一个星期的问题,但是每当我尝试几乎完成我的网站,第二天早上爬到10秒或更多的加载时间。

我已经使用内置的Chrome“Inspect Element”,结果令人失望:10秒+

令人讨厌的是我已经迁移到我的本地XAMPP设置在我的笔记本电脑的加载时间只有2.86秒相比, 10秒+加载时间。

现在,这让我得出结论,罪魁祸首在于nginx和php-fpm不在Joomla源代码

现在我担心我的PHP和nginx的configuration。

这是我的Nginxconfiguration没有位置块:

user www-data www-data; pid /var/run/nginx.pid; worker_processes 8; worker_rlimit_nofile 100000; events { worker_connections 16384; multi_accept on; use epoll; include /etc/nginx.custom.events.d/*.conf; } http { default_type application/octet-stream; access_log off; error_log /var/log/nginx/error.log crit; sendfile on; tcp_nopush on; tcp_nodelay on; fastcgi_read_timeout 300; keepalive_timeout 60; client_header_timeout 60; client_body_timeout 60; reset_timedout_connection on; send_timeout 60; client_header_buffer_size 1k; client_max_body_size 128m; large_client_header_buffers 4 32k; types_hash_max_size 2048; gzip on; gzip_disable "MSIE [1-6]\."; gzip_static on; gzip_proxied expired no-cache no-store private auth; gzip_min_length 1100; gzip_comp_level 2; gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript text/x-js; server_names_hash_bucket_size 128; include mime.conf; charset UTF-8; open_file_cache max=100000 inactive=20s; open_file_cache_valid 30s; open_file_cache_min_uses 2; open_file_cache_errors on; server_tokens off; include proxy.conf; include fcgi.conf; include conf.d/*.conf; include /etc/nginx.custom.d/*.conf; } include /etc/nginx.custom.global.d/*.conf; 

这是我的php-fpm设置:

 [PHP] engine = On short_open_tag = Off asp_tags = Off precision = 14 output_buffering = Off zlib.output_compression = On implicit_flush = Off unserialize_callback_func = serialize_precision = 17 disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, disable_classes = zend.enable_gc = On expose_php = On max_execution_time = 300 max_input_time = -1 max_input_vars = 10000 memory_limit = 128M error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT display_errors = Off display_startup_errors = Off log_errors = On log_errors_max_len = 1024 ignore_repeated_errors = Off ignore_repeated_source = Off report_memleaks = On track_errors = Off html_errors = On variables_order = "GPCS" request_order = "GP" register_argc_argv = Off auto_globals_jit = On post_max_size = 20M auto_prepend_file = auto_append_file = default_mimetype = "text/html" doc_root = user_dir = enable_dl = Off file_uploads = On upload_max_filesize = 25M max_file_uploads = 20 allow_url_fopen = On allow_url_include = Off default_socket_timeout = 300 [CLI Server] cli_server.color = On [Date] [filter] [iconv] [intl] [sqlite] [sqlite3] [Pcre] [Pdo] [Pdo_mysql] pdo_mysql.cache_size = 2000 pdo_mysql.default_socket= [Phar] [mail function] SMTP = localhost smtp_port = 25 mail.add_x_header = On [SQL] sql.safe_mode = Off [ODBC] odbc.allow_persistent = On odbc.check_persistent = On odbc.max_persistent = -1 odbc.max_links = -1 odbc.defaultlrl = 4096 odbc.defaultbinmode = 1 [Interbase] ibase.allow_persistent = 1 ibase.max_persistent = -1 ibase.max_links = -1 ibase.timestampformat = "%Y-%m-%d %H:%M:%S" ibase.dateformat = "%Y-%m-%d" ibase.timeformat = "%H:%M:%S" [MySQL] mysql.allow_local_infile = On mysql.allow_persistent = On mysql.cache_size = 2000 mysql.max_persistent = -1 mysql.max_links = -1 mysql.default_port = mysql.default_socket = mysql.default_host = mysql.default_user = mysql.default_password = mysql.connect_timeout = 60 mysql.trace_mode = Off [MySQLi] mysqli.max_persistent = -1 mysqli.allow_persistent = On mysqli.max_links = -1 mysqli.cache_size = 2000 mysqli.default_port = 3306 mysqli.default_socket = mysqli.default_host = mysqli.default_user = mysqli.default_pw = mysqli.reconnect = Off [mysqlnd] mysqlnd.collect_statistics = On mysqlnd.collect_memory_statistics = Off [OCI8] [PostgreSQL] pgsql.allow_persistent = On pgsql.auto_reset_persistent = Off pgsql.max_persistent = -1 pgsql.max_links = -1 pgsql.ignore_notice = 0 pgsql.log_notice = 0 [Sybase-CT] sybct.allow_persistent = On sybct.max_persistent = -1 sybct.max_links = -1 sybct.min_server_severity = 10 sybct.min_client_severity = 10 [bcmath] bcmath.scale = 0 [browscap] [Session] session.save_handler = files session.use_strict_mode = 0 session.use_cookies = 1 session.use_only_cookies = 1 session.name = PHPSESSID session.auto_start = 0 session.cookie_lifetime = 0 session.cookie_path = / session.cookie_domain = session.cookie_httponly = session.serialize_handler = php session.gc_probability = 0 session.gc_divisor = 1000 session.gc_maxlifetime = 1440 session.bug_compat_42 = Off session.bug_compat_warn = Off session.referer_check = session.cache_limiter = nocache session.cache_expire = 180 session.use_trans_sid = 0 session.hash_function = 0 session.hash_bits_per_character = 5 url_rewriter.tags = "a=href,area=href,frame=src,input=src,form=fakeentry" [MSSQL] mssql.allow_persistent = On mssql.max_persistent = -1 mssql.max_links = -1 mssql.min_error_severity = 10 mssql.min_message_severity = 10 mssql.compatibility_mode = Off mssql.secure_connection = Off [Assertion] [COM] [mbstring] [gd] [exif] [Tidy] tidy.clean_output = Off [soap] soap.wsdl_cache_enabled=1 soap.wsdl_cache_dir="/tmp" soap.wsdl_cache_ttl=86400 soap.wsdl_cache_limit = 5 [sysvshm] [ldap] ldap.max_links = -1 [mcrypt] [dba] [opcache] opcache.enable=1 opcache.memory_consumption=1024 opcache.interned_strings_buffer=64 opcache.max_accelerated_files=100000 opcache.revalidate_freq=60 [curl] 

PS:这是我从第三个网站build立的网站,请帮助我!

如果加载本地XAMPP需要2.7秒,那就不好了! 我认为这个问题在于你的Joomla网站,而不是你的环境。 你有没有检查你的慢查询日志,看看是否有任何慢生成的查询? 你有没有试过调试你的Joomla应用程序,看看瓶颈在哪里? 您的网站应该在不到一秒的时间内加载,否则会在正常的负载下崩溃。