Search Results

Search found 1000 results on 40 pages for 'jim ward'.

Page 17/40 | < Previous Page | 13 14 15 16 17 18 19 20 21 22 23 24  | Next Page >

  • How to enable caching on Apache / Ubuntu Linux?

    - by Jim Mischel
    I have a large (several megabytes) XML file that's updated rather frequently (every 10 minutes or less) and gets a lot of traffic. I'd like to implement some caching to reduce bandwidth and server load. Looking at the Apache documents, I see a dizzying array of configuration options that involve various combinations of mod_expires, mod_headers, and mod_cache (and variants). I end up running in circles and the results aren't what I expect. I'm comfortable editing the various configuration files if I have some idea what I'm supposed to change. But at the moment I'm poking around in the dark and that's never a comfortable feeling. So, perhaps if I describe what I want, somebody here can take me by the hand and say, "This is what you need to do." Periodically, this file, call it "stuff.xml" is updated and a new version copied to the directory. The external url would be, for example, http://example.com/stuff.xml. Understand, this part works. Whenever I request the file, I get the expected result. But the file is big and I want to save bandwidth, so first I'd like to implement conditional GET semantics with the If-Modified-Since header. How do I do this? I've enabled mod_headers and mod_expired and added the <FilesMatching> section in my httpd.conf as recommended in countless examples I've seen online, but that didn't change the behavior when made a conditional GET request. I always get a status 200 with the entire document. So how the heck do I implement this? That'll cut down on neeless transfers. I'd also like to limit the amount of data transferred. Seeing as this is XML, gzipping it should save me 50% or more. My next step would be to somehow gzip the file and, if it's not too difficult, store it in memory. That'll cut down on per-access data transfer, and also reduce disk transfers. So how do I implement this type of caching? Thanks in advance.

    Read the article

  • MX Records - go to two servers?

    - by Jim Beam
    Right now I have a single mail server for IMAP. Let's say I want to introduce Exchange but not all users will be on it. Some users will be on my "legacy" IMAP, others on the "new" Exchange. Is it possible to "split up" your users (from the same e-mail domain) on two services like this? What would the MX records look like? My guess is that this isn't possible, but thought I'd ask. By the way, I realize that Exchange can offer IMAP and all that, but my question is more about splitting users across services and the MX records. The actual protocols above are only examples.

    Read the article

  • Adding users to Sharepoint when they are not in the same domain

    - by jim-work
    Bear with me as I explain this, I'm working my way through Sharepoint access as I go, but I'll clarify my question as I go along. The Problem We have about 10,000 users who need access to our Sharepoint 2005 based reporting. Because our organization is migrating from one domain to another, we need to add each user twice, once for each domain. For the current domain, this is no problem, we've got a powershell script that I tweaked to add all the users in a given CSV file, this takes about 5 minutes to run. The big problem we're having is with users who are NOT in our currently active domain. Because the sharepoint server cannot authenticate the new users, we can't add them directly. What we're doing is creating a temp user, then using STSADM.EXE to migrate that test user to the proper domain/user_name for each of our 10,000 users. The creation and migration takes about 5 seconds per user, or well over 12 hours to run. The Question Has anyone encountered this before? Is there a way to add users without requiring AD authentication? Why is STSADM.EXE running so slow? Thanks a lot for any advice or direction anyone can give me.

    Read the article

  • Dell Dimension running Fedora12 does a "Sleeping Beauty" and I am not am not a "handsome prince"!

    - by Jim Dobbs
    Dell Dimension 2350 with a Pentium IV processor and integrated video and network chips running Fedora12 does a "Sleeping Beauty" and I, apparently, am not am not a "handsome prince"! The system puts video and network to sleep and it will not wakeup. I have heard of this problem on laptops, but this is a tower. Any ideas or help is appreciated. I tried to ping the network card from another system and ping fails. The logs indicate that the system continues to be active. Pressing keyboard short-cut keys makes the disk light blink but neither the video or network card comes alive. Failing all else, are there any Linux commands that I could schedule in cron to pulse video and network adapters hourly that will keep them awake? Or, should I wait on Fedora13? Before this machine, I built a Dimension 2400 with Pentium IV and it had the same problem. Fedora9 on the same hardware is fine.

    Read the article

  • Optimize php-fpm and varnish for a powerfull server

    - by Jim
    My setup is: Intel® Core™ i7-2600 and RAM 16 GB DDR3 RAM varnish+nginx+php-fpm+apc for a not very heavy WordPress blog with W3 Total Cache and CDN My problem is that after 55 hits per second according to blitz.io varnish starts giving out timeouts. CPU usage at this time is hardly 1%. Free memory at all time remains 10GB+. I tried benchmarking php-fpm directly with result of 150hits/s without any timeouts. But after that the CPU usage goes 100% and it stops responding. Can you help me optimize it to handle more? As i understand nginx has nothing to do over here so i dont put its config. php-fpm config listen = /tmp/php5-fpm.sock listen.allowed_clients = 127.0.0.1 user = nginx group = nginx pm = dynamic pm.max_children = 150 pm.start_servers = 7 pm.min_spare_servers = 2 pm.max_spare_servers = 15 pm.max_requests = 500 slowlog = /var/log/php-fpm/www-slow.log php_admin_value[error_log] = /var/log/php-fpm/www-error.log php_admin_flag[log_errors] = on apc extension = apc.so apc.enabled=1 apc.shm_size=512MB apc.num_files_hint=0 apc.user_entries_hint=0 apc.ttl=7200 apc.use_request_time=1 apc.user_ttl=7200 apc.gc_ttl=3600 apc.cache_by_default=1 apc.filters apc.mmap_file_mask=/tmp/apc.XXXXXX apc.file_update_protection=2 apc.enable_cli=0 apc.max_file_size=1M apc.stat=1 apc.stat_ctime=0 apc.canonicalize=0 apc.write_lock=1 apc.report_autofilter=0 apc.rfc1867=0 apc.rfc1867_prefix =upload_ apc.rfc1867_name=APC_UPLOAD_PROGRESS apc.rfc1867_freq=0 apc.rfc1867_ttl=3600 apc.include_once_override=0 apc.lazy_classes=0 apc.lazy_functions=0 apc.coredump_unmap=0 apc.file_md5=0 apc.preload_path Varnish VCL backend default { .host = "127.0.0.1"; .port = "8080"; .connect_timeout = 6s; .first_byte_timeout = 6s; .between_bytes_timeout = 60s; } acl purgehosts { "localhost"; "127.0.0.1"; } # Called after a document has been successfully retrieved from the backend. sub vcl_fetch { # Uncomment to make the default cache "time to live" is 5 minutes, handy # but it may cache stale pages unless purged. (TODO) # By default Varnish will use the headers sent to it by Apache (the backend server) # to figure out the correct TTL. # WP Super Cache sends a TTL of 3 seconds, set in wp-content/cache/.htaccess set beresp.ttl = 24h; # Strip cookies for static files and set a long cache expiry time. if (req.url ~ "\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$") { unset beresp.http.set-cookie; set beresp.ttl = 24h; } # If WordPress cookies found then page is not cacheable if (req.http.Cookie ~"(wp-postpass|wordpress_logged_in|comment_author_)") { # set beresp.cacheable = false;#versions less than 3 #beresp.ttl>0 is cacheable so 0 will not be cached set beresp.ttl = 0s; } else { #set beresp.cacheable = true; set beresp.ttl=24h;#cache for 24hrs } # Varnish determined the object was not cacheable #if ttl is not > 0 seconds then it is cachebale if (!beresp.ttl > 0s) { # set beresp.http.X-Cacheable = "NO:Not Cacheable"; } else if ( req.http.Cookie ~"(wp-postpass|wordpress_logged_in|comment_author_)" ) { # You don't wish to cache content for logged in users set beresp.http.X-Cacheable = "NO:Got Session"; return(hit_for_pass); #previously just pass but changed in v3+ } else if ( beresp.http.Cache-Control ~ "private") { # You are respecting the Cache-Control=private header from the backend set beresp.http.X-Cacheable = "NO:Cache-Control=private"; return(hit_for_pass); } else if ( beresp.ttl < 1s ) { # You are extending the lifetime of the object artificially set beresp.ttl = 300s; set beresp.grace = 300s; set beresp.http.X-Cacheable = "YES:Forced"; } else { # Varnish determined the object was cacheable set beresp.http.X-Cacheable = "YES"; if (beresp.status == 404 || beresp.status >= 500) { set beresp.ttl = 0s; } # Deliver the content return(deliver); } sub vcl_hash { # Each cached page has to be identified by a key that unlocks it. # Add the browser cookie only if a WordPress cookie found. if ( req.http.Cookie ~"(wp-postpass|wordpress_logged_in|comment_author_)" ) { #set req.hash += req.http.Cookie; hash_data(req.http.Cookie); } } # vcl_recv is called whenever a request is received sub vcl_recv { # remove ?ver=xxxxx strings from urls so css and js files are cached. # Watch out when upgrading WordPress, need to restart Varnish or flush cache. set req.url = regsub(req.url, "\?ver=.*$", ""); # Remove "replytocom" from requests to make caching better. set req.url = regsub(req.url, "\?replytocom=.*$", ""); remove req.http.X-Forwarded-For; set req.http.X-Forwarded-For = client.ip; # Exclude this site because it breaks if cached if ( req.http.host == "sr.ituts.gr" ) { return( pass ); } # Serve objects up to 2 minutes past their expiry if the backend is slow to respond. set req.grace = 120s; # Strip cookies for static files: if (req.url ~ "\.(jpg|jpeg|gif|png|ico|css|zip|tgz|gz|rar|bz2|pdf|txt|tar|wav|bmp|rtf|js|flv|swf|html|htm)$") { unset req.http.Cookie; return(lookup); } # Remove has_js and Google Analytics __* cookies. set req.http.Cookie = regsuball(req.http.Cookie, "(^|;\s*)(__[a-z]+|has_js)=[^;]*", ""); # Remove a ";" prefix, if present. set req.http.Cookie = regsub(req.http.Cookie, "^;\s*", ""); # Remove empty cookies. if (req.http.Cookie ~ "^\s*$") { unset req.http.Cookie; } if (req.request == "PURGE") { if (!client.ip ~ purgehosts) { error 405 "Not allowed."; } #previous version ban() was purge() ban("req.url ~ " + req.url + " && req.http.host == " + req.http.host); error 200 "Purged."; } # Pass anything other than GET and HEAD directly. if (req.request != "GET" && req.request != "HEAD") { return( pass ); } /* We only deal with GET and HEAD by default */ # remove cookies for comments cookie to make caching better. set req.http.cookie = regsub(req.http.cookie, "1231111111111111122222222333333=[^;]+(; )?", ""); # never cache the admin pages, or the server-status page, or your feed? you may want to..i don't if (req.request == "GET" && (req.url ~ "(wp-admin|bb-admin|server-status|feed)")) { return(pipe); } # don't cache authenticated sessions if (req.http.Cookie && req.http.Cookie ~ "(wordpress_|PHPSESSID)") { return(lookup); } # don't cache ajax requests if(req.http.X-Requested-With == "XMLHttpRequest" || req.url ~ "nocache" || req.url ~ "(control.php|wp-comments-post.php|wp-login.php|bb-login.php|bb-reset-password.php|register.php)") { return (pass); } return( lookup ); } Varnish Daemon options DAEMON_OPTS="-a :80 \ -T 127.0.0.1:6082 \ -f /etc/varnish/ituts.vcl \ -u varnish -g varnish \ -S /etc/varnish/secret \ -p thread_pool_add_delay=2 \ -p thread_pools=8 \ -p thread_pool_min=100 \ -p thread_pool_max=1000 \ -p session_linger=50 \ -p session_max=150000 \ -p sess_workspace=262144 \ -s malloc,5G" Im not sure where to start, should i for start optimize php-fpm and then go to varnish or php-fpm is at its max right now so i should start looking for the problem in varnish?

    Read the article

  • Acer Aspire PC locked up and won't re-start

    - by Jim Scott
    Vista Home Premium locked up on 5/12/10 while on a website and could not get to 'control-alt-delete.' Mouse locked, too. On/off switch would not work (stayed lit) so I unplugged the power cord. When I tried to re-start the computer I could hear a fan running but it would not boot up, nothing on the monitor and no lights on the keyboard. O/S was preloaded so I do not have a boot disk.I tried pressing F1, F2 and F11 and also with monitor off but nothing worked. Computer has not been been moved or abused so all internal connections should be fine. Have updated Windows Vista Home Premium regularly and also updated Avira anti virus and anti malware programs regularly. Using Firefox and Vista Home Premium O/S. Computer is 2 years old and was purchased new from Best Buy.

    Read the article

  • get-eventlog issue

    - by Jim B
    I wanted to get a quick report of some log entries I saw on a server, so I ran: Get-Eventlog -logname system -newest 10 -computer fs1 | fl I got events back however the descriptions were all wrong. Here's an example: Index : 1260055 EntryType : Warning InstanceId : 2186936367 Message : The description for Event ID '-2108030929' in Source 'W32Time' cannot be found. The local compute r may not have the necessary registry information or message DLL files to display the message, or you may not have permission to access them. The following information is part of the event:'time. windows.com,0x1' Category : (0) CategoryNumber : 0 ReplacementStrings : {time.windows.com,0x1} Source : W32Time TimeGenerated : 1/25/2010 10:43:31 AM TimeWritten : 1/25/2010 10:43:31 AM UserName : Note that if I pull the event ID property it's correct (in this case 38) Is this is known issue or is something wrong. The messages resolve fine via event viewer locally and remotely Here is the powershell version info: Name : ConsoleHost Version : 2.0 InstanceId : bc58fcf8-bba3-4ca8-8972-17dbd5d9ff08 UI : System.Management.Automation.Internal.Host.InternalHostUserInterface CurrentCulture : en-US CurrentUICulture : en-US PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy IsRunspacePushed : False Runspace : System.Management.Automation.Runspaces.LocalRunspace Here is the revised version info: Name Value ---- ----- CLRVersion 2.0.50727.3603 BuildVersion 6.0.6002.18111 PSVersion 2.0 WSManStackVersion 2.0 PSCompatibleVersions {1.0, 2.0} SerializationVersion 1.1.0.1 PSRemotingProtocolVersion 2.1

    Read the article

  • How to restore windows.old for windows 7

    - by Jim Thio
    I reinstall windows. Then I regret that and want to go back. Fortunately the old windows is stored at windows.old I follow the instruction in http://support.microsoft.com/kb/971760 I did it all with small catches When I insert the windows 7 installer, the drive for installer is X and my hard disk is D rather than C. However, on normal windows operation the drive is C. Only when I boot through CD the partition is assigned to the letter D. There is no file bootsect on my windows installer So I can't do **D:\boot\bootsect /nt60 c:** Which should be changed to X:\boot\bootsect /nt60 C: or X:\boot\bootsect /nt60 D: depending on what it really does. As I said if I boot through windows dvd my hard disk letter is D but normally it's C. I am not even sure what that bootsect does anyway. I also can't do this one Attrib –h –s –r boot.ini.saved Copy boot.ini.saved boot.ini There is no file boot.ini or boot.ini.saved It's hidden but I don't see it if I try to look unhidden files either. Because I simply switch from windows 7 to windows 7 and the directory for windows don't change c:\windows I thought it should still work. Well, it doesn't. When windows restart it only goes to the logo and then restart the computer.

    Read the article

  • Ubuntu 9.10 will not boot

    - by Jim
    After an update yesterday my Dell X300 will only boot to a screen with an option to perform 2 memory tests. If I perform these tests, it will only go back to this same screen, offering a choice of memory test again, 86+ or 86+ serial console 115200. This screen is headed - GNU Grub version 1.97 beta 4. This is a full install on my hard drive. How can I get back to booting normally?

    Read the article

  • In Djano, why do I get a 500 server error when browsing, but "python mysite.fcgi" from SSH works fin

    - by Jim
    If I browse to my site, I get a 500 "internal server error." However, if I SSH into my server and go to my site's folder and run "python mysite.fcgi" I see the HTML rendered fine. Obviously, something is wrong, but I'm not sure what. Here is my .htaccess file: AddHandler fastcgi-script .fcgi RewriteEngine On RewriteRule ^(media/.*)$ - [L] RewriteRule ^(static/.*)$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ mysite.fcgi/$1 [QSA,L] Here is my mysite.fcgi file: #!/usr/bin/python2.5 import sys, os sys.path.insert(0, "/kunden/homepages/34/[mydir]/htdocs/projects/django") sys.path.insert(1, "/kunden/homepages/34/[mydir]/lib/python/site-packages") os.chdir("/kunden/homepages/34/[mydir]/htdocs/projects/django/mysite") os.environ['DJANGO_SETTINGS_MODULE'] = 'mysite.settings' from django.core.servers.fastcgi import runfastcgi runfastcgi(["method=threaded", "daemonize=false"]) I'm setting this up on 1and1. It has been a pain, but I think I'm close.

    Read the article

  • Why is mount -a not mounting fuse drive properly when executed remotely (via Fabric)?

    - by Jim D
    This is a weird bug and I'm not sure where it's coming from. Here's a quick run down of what I'm doing. I'm trying to mount a FUSE drive to an Amazon EC2 instance running Ubuntu 10.10 using s3fs (FUSE over Amazon). s3fs is compiled from source according to the instructions etc. I've also added an entry to /etc/fstab so that the drive mounts on boot. Here's what /etc/fstab looks like: # /etc/fstab: static file system information. # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc nodev,noexec,nosuid 0 0 LABEL=uec-rootfs / ext4 defaults 0 0 /dev/sda2 /mnt auto defaults,nobootwait,comment=cloudconfig 0 2 /dev/sda3 none swap sw,comment=cloudconfig 0 0 s3fs#mybucket /mnt/s3/mybucket fuse default_acl=public-read,use_cache=/tmp,allow_other 0 0 So the good news is that this works fine. On reboot the connection mounts correctly. I can also do: $ sudo umount /mnt/s3/mybucket $ sudo mount -a $ mountpoint /mnt/s3/mybucket /mnt/s3/mybucket is a mountpoint Great, right? Well here's the problem. I'm using Fabric to automate the process of building and managing this instance. I noticed I was getting this error message when using Fabric to build s3fs and set up the mount process: mountpoint: /mnt/s3/mybucket: Transport endpoint is not connected I isolated it down the the problem and built a fabric task that reproduces the problem: def remount_s3fs(): sudo("mount -a") Which does: [ec2-xx-xx-xx-xx.compute-1.amazonaws.com] Executing task 'remount_s3fs' [ec2-xx-xx-xx-xx.compute-1.amazonaws.com] sudo: mount -a [And yes, I was sure to unmount it before running this task.] When I check the mount using mountpoint I get: $ mountpoint /mnt/s3/mybucket mountpoint: /mnt/s3/mybucket: Transport endpoint is not connected Done. But if I run sudo mount -a at the command line, it works. Hrm. Here is that fab task output again, this time in full debug mode: [ec2-xx-xx-xx-xx.compute-1.amazonaws.com] Executing task 'remount_s3fs' [ec2-xx-xx-xx-xx.compute-1.amazonaws.com] sudo: sudo -S -p 'sudo password:' /bin/bash -l -c "mount -a" Again, I get that transport endpoint not connected error. I've also tried copying and pasting the exact command run into my ssh session (i.e. sudo -S -p 'sudo password:' /bin/bash -l -c "mount -a") and it works fine. So...that's my problem. Any ideas?

    Read the article

  • Dell Dimension running Fedora12 does a "Sleeping Beauty" and I am not a "handsome prince"!

    - by Jim Dobbs
    Dell Dimension 2350 with a Pentium IV processor and integrated video and network chips running Fedora12 does a "Sleeping Beauty" and I, apparently, am not am not a "handsome prince"! The system puts video and network to sleep and it will not wakeup. I have heard of this problem on laptops, but this is a tower. Any ideas or help is appreciated. I tried to ping the network card from another system and ping fails. The logs indicate that the system continues to be active. Pressing keyboard short-cut keys makes the disk light blink but neither the video or network card comes alive. Failing all else, are there any Linux commands that I could schedule in cron to pulse video and network adapters hourly that will keep them awake? Or, should I wait on Fedora13? Before this machine, I built a Dimension 2400 with Pentium IV and it had the same problem. Fedora9 on the same hardware is fine.

    Read the article

  • Dell Dimension 2350 with a Pentium IV processor and integrated video and network chips running Fedor

    - by Jim Dobbs
    Dell Dimension 2350 with a Pentium IV processor and integrated video and network chips running Fedora12 does a "Sleeping Beauty" and I, apparently, am not am not a "handsome prince"! The system puts video and network to sleep and it will not wakeup. I have heard of this problem on laptops, but this is a tower. Any ideas or help is appreciated. I tried to ping the network card from another system and ping fails. The logs indicate that the system continues to be active. Pressing keyboard short-cut keys makes the disk light blink but neither the video or network card comes alive. Failing all else, are there any Linux commands that I could schedule in cron to pulse video and network adapters hourly that will keep them awake? Or, should I wait on Fedora13? Before this machine, I built a Dimension 2400 with Pentium IV and it had the same problem. Fedora9 on the same hardware is fine.

    Read the article

  • How to stop syslog from listening to 514 on CentOS 5.8

    - by Jim
    I have a CentOS 5.8 machine (with regular syslog) that for some reason is listening to port 514, even though it is not started with "-r" (to receive remote syslog messages). # netstat -tulpn | grep 514 udp 0 0 0.0.0.0:514 0.0.0.0:* 2698/syslogd Syslog is started with only "-m 0": ps -ef | grep syslogd root 2698 1 0 15:55 ? 00:00:00 syslogd -m 0 I have tried starting it with "-m 0 -r", just to check if there was any difference, but there is not. This machine is a client and should only log to a central log server - it should not be listening itself. What am I missing?

    Read the article

  • Is one type of options to ps preferred?

    - by Jim
    GNU ps supports BSD-style options, UNIX-style options, and GNU long options. Is using one of these types (in scripts and at the command line) preferred over the others? I get the impression from the manpage that the functionality of the option styles does not overlap completely.

    Read the article

  • How to have desktop icons constantly highlighted?

    - by Jim Seed
    In Windows 7 when I set the desktop color, it actually sets the color of text in desktop icons. So if I have a black wallpaper, I need to set it to white so icon text will be visible. If I want to have a multi-colored wallpaper then this causes a problem, as icon text won't be readable over areas where color is the same as the set desktop color. Is there a way to have icons constantly highlighted to avoid this?

    Read the article

  • How do I create a folder name that starts with a dot in Windows 7?

    - by Jim Tough
    I'm on a Windows 7 machine and need to create a new folder whose name starts with a dot. To be specific, I need to create the folder "C:\USERS\theusername\.ec2" because that is the default location that the AWS plugin for Eclipse likes to find certain configuration files. Windows 7 gives me an error message whenever I try to create a folder that starts with a dot: You must type a filename Seriously? There are already subfolders in this folder that start with a dot! How can I tell Windows 7 to just shut up and create my folder?

    Read the article

  • Virtual Box between differnt PCs

    - by Jim
    I am using Virtual Box machine (as .vdi) on external HDD drive so I can move it between different pcs. On each PC I have created new VM machine, attached that vdi and it seems working well. However, I've noticed that during my last transfer the latest installed applications were not saved on the .vdi, which made me to loose 1 day of work. I don't remember of doing any snapshots which I could merge. Can someone give me a hint how to handle this efficiently in feature?

    Read the article

  • Email forwarding for hundreds of domains [closed]

    - by Jim Westergren
    I run a free website builder. More than one thousand so far have mapped their own domain name to their site. I provide either email forward or installation of Google Apps as a solution for email. Email forward are today setup manually at my VPS provider which is a pain. I need administer email forwarding via an API so it is done automatically. If I choose to run my own mail server. What is the recommended setup in my use case?

    Read the article

  • Server monitoring?

    - by Jim
    is there a free, open source server monitoring tool like Nagios that runs on the MS stack? It will need to be able to detect service stoppages and starts also.

    Read the article

  • How do I access admin shares on windows 2008 r2?

    - by Jim Geurts
    I am not able to access admin file shares on a Windows 2008 R2 box, if I'm logged in as a user who is part of the Administrators group. The only way I can access those shares is if I use the built in Administrator account. How can I configure the server to allow any administrator to access the file system via admin shares? Btw, this works with Windows 2003. By admin shares, I refer to: \192.168.1.4\c$ or \192.168.1.4\e$

    Read the article

< Previous Page | 13 14 15 16 17 18 19 20 21 22 23 24  | Next Page >