1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508
|
<HTML>
<HEAD>
<TITLE>Slashcode FAQ</TITLE>
<!--#include virtual="/slashhead.inc"-->
<H1>Slashcode FAQ</H1>
<P>
Before asking any questions, please read the relevant documentation.
</P>
<UL>
<LI>License [<A HREF="http://slashcode.com/docs/COPYING">ASCII</A>]</LI>
<LI>CHANGES [<A HREF="http://slashcode.com/docs/CHANGES">ASCII</A>]</LI>
<LI>AUTHORS [<A HREF="http://slashcode.com/docs/AUTHORS">ASCII</A>]</LI>
<LI>README [
<A HREF="http://slashcode.com/docs/README">ASCII</A> |
<A HREF="http://slashcode.com/docs/README.html">HTML</A> |
<A HREF="http://slashcode.com/docs/README.pod">POD</A>
]</LI>
<LI>INSTALL [
<A HREF="http://slashcode.com/docs/INSTALL">ASCII</A> |
<A HREF="http://slashcode.com/docs/INSTALL.html">HTML</A> |
<A HREF="http://slashcode.com/docs/INSTALL.pod">POD</A>
]</LI>
<LI>HOWTO-Templates [
<A HREF="http://slashcode.com/docs/HOWTO-Templates.html">HTML</A> |
<A HREF="http://slashcode.com/docs/HOWTO-Templates.pod">POD</A>
]</LI>
<LI>HOWTO-Themes [
<A HREF="http://slashcode.com/docs/HOWTO-Themes.html">HTML</A> |
<A HREF="http://slashcode.com/docs/HOWTO-Themes.pod">POD</A>
]</LI>
<LI>HOWTO-Plugins [
<A HREF="http://slashcode.com/docs/HOWTO-Plugins.html">HTML</A> |
<A HREF="http://slashcode.com/docs/HOWTO-Plugins.pod">POD</A>
]</LI>
<LI>slashstyle [
<A HREF="http://slashcode.com/docs/slashstyle">ASCII</A> |
<A HREF="http://slashcode.com/docs/slashstyle.html">HTML</A> |
<A HREF="http://slashcode.com/docs/slashstyle.pod">POD</A>
]</LI>
<LI>slashguide [
<A HREF="http://slashcode.com/docs/slashguide">ASCII</A> |
<A HREF="http://slashcode.com/docs/slashguide.html">HTML</A> |
<A HREF="http://slashcode.com/docs/slashguide.pod">POD</A>
]</LI>
<LI>Boilerplates [
<A HREF="http://slashcode.com/docs/boilerplates/command-line">Command-line program</A> |
<A HREF="http://slashcode.com/docs/boilerplates/web">Web program</A> |
<A HREF="http://slashcode.com/docs/boilerplates/module">Module program</A>
]</LI>
<LI>Database schema description [
<A HREF="http://slashcode.com/docs/slashtables.html">HTML</A> |
<A HREF="http://slashcode.com/docs/slashtables.pod">POD</A>
]</LI>
<LI>ERD of database schema [
<A HREF="http://slashcode.com/docs/slasherd.fig">Fig</A> |
<A HREF="http://slashcode.com/docs/slasherd.pdf">PDF</A> |
<A HREF="http://slashcode.com/docs/slasherd.ps">PostScript</A>
]</LI>
<LI>Slash API Docs<UL>
<LI><A HREF="http://slashcode.com/docs/Slash.html">Slash</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-DB.html">Slash::DB</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Display.html">Slash::Display</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Display-Plugin.html">Slash::Display::Plugin</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Display-Provider.html">Slash::Display::Provider</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Test.html">Slash::Test</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility.html">Slash::Utility</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility-Access.html">Slash::Utility::Access</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility-Anchor.html">Slash::Utility::Anchor</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility-Data.html">Slash::Utility::Data</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility-Display.html">Slash::Utility::Display</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility-Environment.html">Slash::Utility::Environment</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-Utility-System.html">Slash::Utility::System</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-XML.html">Slash::XML</A></LI>
<LI><A HREF="http://slashcode.com/docs/Slash-XML-RSS.html">Slash::XML::RSS</A></LI>
</UL></LI>
<LI><A HREF="http://slashcode.com/docs/1.0/">(Old) Slash 1.0 Documentation</A></LI>
<LI><A HREF="http://www.template-toolkit.org/docs/default/">Template Toolkit</A></LI>
<LI><A HREF="http://purl.org/rss/1.0/">RSS</A></LI>
<LI><A HREF="http://slashcode.com/rss/1.0/modules/Slash/">RSS Slash Module</A></LI>
<LI>Slash conversion utilities (also see INSTALL)<UL>
<LI><A HREF="http://slashcode.com/docs/slash1toslash2.html">slash1 -> slash2</A></LI>
<LI><A HREF="http://slashcode.com/docs/slash1toslash2.2.html">slash1 -> slash2.2</A></LI>
<LI><A HREF="http://slashcode.com/docs/slash2toslash2.2.html">slash2 -> slash2.2</A></LI>
</UL></LI>
</UL>
<P>
All code references below are to the latest version of Slash; if
you are using an old version, please upgrade.
</P>
<UL>
<LI><A HREF="#Slashcodecom">Slashcode.com</A>
<UL> <LI><A HREF="#Slashcodecom0">What is Slash?</A></LI>
<LI><A HREF="#Slashcodecom1">Is this the same code that runs Slashdot?</A></LI>
<LI><A HREF="#Slashcodecom2">What other sites use Slash?</A></LI>
<LI><A HREF="#Slashcodecom3">Can I really use this code on my own site? For free?</A></LI>
<LI><A HREF="#Slashcodecom4">Do I need to link back to this site if I use Slash?</A></LI>
<LI><A HREF="#Slashcodecom5">OK, where do I download it from?</A></LI>
<LI><A HREF="#Slashcodecom6">How can I help?</A></LI>
<LI><A HREF="#Slashcodecom7">Who are you?</A></LI>
<LI><A HREF="#Slashcodecom8">How do I contact you guys about ... anything?</A></LI>
<LI><A HREF="#Slashcodecom9">What is discussed on Slashcode.com?</A></LI>
</UL>
</LI>
<LI><A HREF="#SlashInstallation">Slash Installation</A>
<UL> <LI><A HREF="#SlashInstallation0">How do I install Slash?</A></LI>
<LI><A HREF="#SlashInstallation1">Why do I have problems with mod_perl and Apache?</A></LI>
<LI><A HREF="#SlashInstallation2">What is this about GMT?</A></LI>
<LI><A HREF="#SlashInstallation3">Will Slash work on Windows?</A></LI>
<LI><A HREF="#SlashInstallation4">Is MySQL 3.23 broken, or is Slash?</A></LI>
</UL>
</LI>
<LI><A HREF="#SlashCode">Slash Code</A>
<UL> <LI><A HREF="#SlashCode0">Can you make Slash compliant with HTML x.x?</A></LI>
<LI><A HREF="#SlashCode1">Why don't you port Slash to PHP/Python/Java/Lisp/VB/Fortran?</A></LI>
<LI><A HREF="#SlashCode2">What is the development roadmap?</A></LI>
</UL>
</LI>
<LI><A HREF="#SlashAdministration">Slash Administration</A>
<UL> <LI><A HREF="#SlashAdministration0">How do I log in?</A></LI>
<LI><A HREF="#SlashAdministration1">Is there any manual for this thing?</A></LI>
<LI><A HREF="#SlashAdministration2">Where are my .shtml files?</A></LI>
<LI><A HREF="#SlashAdministration3">How can I force updates / make pages update more frequently?</A></LI>
<LI><A HREF="#SlashAdministration4">How does the "Older Stuff" Slashbox work?</A></LI>
</UL>
</LI>
<LI><A HREF="#Troubleshooting">Troubleshooting</A>
<UL> <LI><A HREF="#Troubleshooting0">How Do I Troubleshoot $x?</A></LI>
</UL>
</LI>
</UL>
<H2><A NAME="Slashcodecom">Slashcode.com</A></H2>
<H3><A NAME="Slashcodecom0">What is Slash?</A></H3>
<P>
Slash is a database-driven news and message board, using Perl, Apache and
MySQL. It uses persistence through mod_perl for a good speed and
efficiency. Slash has all the features and more that you'd ever want in
a bulletin-board/message-board system. You can customize it to anything
you want, give it any appearance that you want. This can mostly be done
via data in the database. Slash is a database beast in the true sense.
</P>
<H3><A NAME="Slashcodecom1">Is this the same code that runs Slashdot?</A></H3>
<P>
Yes. Slashdot and Slashcode are usually running the latest development
code from CVS, within a week or so.
</P>
<H3><A NAME="Slashcodecom2">What other sites use Slash?</A></H3>
<P>
Well, Slashcode is one. Look at the <A HREF="http://slashcode.com/sites.shtml">list of Slash sites we know about</A>
(including sites that host other Slash sites),
and please <A HREF="http://slashcode.com/submit.pl?tid=slashsites&section=yass">tell us</A> about any other sites
we don't know about.
</P>
<H3><A NAME="Slashcodecom3">Can I really use this code on my own site? For free?</A></H3>
<P>
Yes. Did you <A HREF="http://slashcode.com/docs/COPYING">read the license</A>?
</P>
<H3><A NAME="Slashcodecom4">Do I need to link back to this site if I use Slash?</A></H3>
<P>
No, but it would be nice if you did. We'd link back to your site if we
used your code.
</P>
<H3><A NAME="Slashcodecom5">OK, where do I download it from?</A></H3>
<P>
<A HREF="http://sf.net/projects/slashcode/">Our project page on SourceForge.net</A> has links
to all the latest files, through HTTP. It is available on CVS
at <A HREF="http://cvs.slashcode.com/">cvs.slashcode.com</A> and FTP
at <A HREF="ftp://ftp.slashcode.com/pub/slashcode/">ftp.slashcode.com</A>.
</P>
<H3><A NAME="Slashcodecom6">How can I help?</A></H3>
<P>
Join in the disucssions on <A HREF="http://slashcode.com/">Slashcode</A>,
give us feedback, help other users in our growing community, submit bug
reports, and just generally participate. We will regularly post on
<A HREF="http://slashcode.com/">Slashcode</A> about
opportunities to help out.
</P>
<H3><A NAME="Slashcodecom7">Who are you?</A></H3>
<P>
Slash is developed full-time by three people: Patrick Galbraith (CaptTofu),
Chris Nandor (pudge), and Brian Aker (Krow). It was, of course, started by
Rob Malda (CmdrTaco). Jonathon Pater (CowboyNeal) still works on the code,
and other Slashdot authors Clifton Wood (Cliff) and Jamie McCarthy (jamie)
put in a lot of time on it. Of course, there is plenty of additional help
given by the users of the code and the various sites, other OSDN
programmers and sysadmins, etc. Thanks!
See the <A HREF="http://slashcode.com/authors.pl">authors</A> page for some more information.
</P>
<H3><A NAME="Slashcodecom8">How do I contact you guys about ... anything?</A></H3>
<P>
We have several ways for you to get in touch with us. Before
sending in any bug report or question relating to problems with the code
or setup, read the <A HREF="#Troubleshooting"
>Troubleshooting</A> section below.</P>
<UL>
<LI>Bug reports - Submit bug reports
at <A HREF="http://sf.net/tracker/?atid=104421&group_id=4421">SourceForge.net</A>.</LI>
<LI>Mailing lists -
Join the various
<A HREF="http://sf.net/mail/?group_id=4421">mailing lists</A>.
</LI>
<LI>Patches -
Please submit patches at
<A HREF="http://sf.net/tracker/?atid=304421&group_id=4421">SourceForge.net</A>.</LI>
<LI>Feature Requests -
Please submit feature requests at
<A HREF="http://sf.net/tracker/?atid=354421&group_id=4421">SourceForge.net</A>.</LI>
<LI>IRC -
You'll often find us on <A HREF="http://www.openprojects.net/">Open Projects Network</A>
in the #slash channel (try hostname irc.slashcode.com).</LI>
<LI>General Help -
A better place for general "I can't do it!" help is the mailing lists.
Stuff that may be of more general interest is welcome here; but you
will probably get better help on the lists.</LI>
<LI>Story submissions - Use the
<A HREF="http://slashcode.com/submit.pl">story submission</A> link to
tell us about your new Slash sites, your ideas for the Slashcode
site, questions for Ask Slashcode. DO NOT use this for bug reports. Use
<A HREF="http://sf.net/bugs/?group_id=4421">SourceForge.net</A> for bug
reports. Also try not to use it for general "I can't do this!" help;
you'll get a much better response for those on the mailing list.</LI>
</UL>
<P>Please use these ways of getting in touch with us. It makes our jobs
easier, and it makes it easier for us to help you, the community.
</P>
<H3><A NAME="Slashcodecom9">What is discussed on Slashcode.com?</A></H3>
<P>
Anything that is on-topic. On-topic comments include anything directly related
to Slash. This excludes flames and discussions about Slashdot editorial policies.
This also excludes discussions about other Slash-like projects. We reserve
the right to delete any comments we feel are inappropriate.
</P>
<H2><A NAME="SlashInstallation">Slash Installation</A></H2>
<H3><A NAME="SlashInstallation0">How do I install Slash?</A></H3>
<P>
Read INSTALL. Follow the directions contained therein. Rinse, lather,
and if necessary, repeat. Really, everything should be explained in there.
See the section on <A HREF="#Troubleshooting">troubleshooting</A> if you
have problems.
</P>
<H3><A NAME="SlashInstallation1">Why do I have problems with mod_perl and Apache?</A></H3>
<P>
Because you didn't install it according to the instructions, perhaps
using older or beta versions of the software or prebuilt binaries or
packages, or you don't have all the Perl modules installed properly,
or because you are using PHP (as many people have reported
problems using PHP and mod_perl both with Apache, and there's not
much we, as lowly application programmers, can do about that :-).
</P>
<H3><A NAME="SlashInstallation2">What is this about GMT?</A></H3>
<P>
MySQL and your Perl processes must run in GMT. That way, it is easy for
users around the world to set their own timezone in their preferences.
Read the INSTALL directions about getting MySQL in GMT, and see the supplied
httpd.conf and util/slash files about keeping Perl in GMT.
</P>
<H3><A NAME="SlashInstallation3">Will Slash work on Windows?</A></H3>
<P>
You can use Slash from any machine with a browser, of course, but to install
Slash, only Unix is supported. That doesn't mean you can't get some or all
of it to work on Windows; it just means that we have not tested it on Windows
and don't have the time to make sure it works on Windows. This may happen
eventually. Most of the code should work fine on Windows. However, there
is no liklihood that Slash will ever be ported by us to work with IIS. Slash
requires Apache. Hopefully, it will work fine with the Windows version of
Apache, when we get around to playing with it on Windows.
</P>
<H3><A NAME="SlashInstallation4">Is MySQL 3.23 broken, or is Slash?</A></H3>
<P>
MySQL 3.23 changed behavior of auto increment fields so that negative numbers
are not allowed in the fields. Slash 1.0 uses auto increment on its uid field,
and the anonymous coward uid is -1. This is fixed in Slash 2.0. Note that
Slash 2.0 requires MySQL 3.23, while Slash 1.0 requires (for this reason)
MySQL 3.22.
</P>
<H2><A NAME="SlashCode">Slash Code</A></H2>
<H3><A NAME="SlashCode0">Can you make Slash compliant with HTML x.x?</A></H3>
<P>
No, but YOU can! Slash is fully customizable. You can edit the templates
to suit your taste. See the HOWTO documents for themes, plugins, and
templates.
</P>
<H3><A NAME="SlashCode1">Why don't you port Slash to PHP/Python/Java/Lisp/VB/Fortran?</A></H3>
<P>
Because we like Perl. And no, Perl is not slow. If you think it is, well,
you are entitiled to your opinion, and we've heard it all before. However,
you are free to use whatever programs and languages you like, and we even
have a <A HREF="http://slashcode.com/slashalikes.shtml">list of other systems and ports of
Slash</A> that you can choose from. Enjoy!
</P>
<H3><A NAME="SlashCode2">What is the development roadmap?</A></H3>
<P>
Right now, the current version of slash is 1.0 (and at this writing, the
the release is 1.0.9). The current development version (codename: bender)
is 1.1. When it is final, it will go to 2.0. The next development release
will be 2.1, and the next version 2.2. This release will be the Slashdot
release, in that it will be for bringing Slashdot up to date on the 2.0
codebase. After that, we will move to 2.3, which currently is not
well-defined, but will be a lot of the features we put off in 2.0 and are
not needed for 2.2.
</P>
<H2><A NAME="SlashAdministration">Slash Administration</A></H2>
<H3><A NAME="SlashAdministration0">How do I log in?</A></H3>
<P>
If you are logged in as a user, and you have admin privileges, then you are
logged in as an admin. Go to the home page and log in and start administrating!
</P>
<H3><A NAME="SlashAdministration1">Is there any manual for this thing?</A></H3>
<P>
We are working on documentation. Look at the schema for the database, play
around with the site, and read the Getting Started document, which is linked
to in the admin menu (when you are logged in) as "Help". Or you can go
straight to the document at http://yoursite/slashguide.shtml.
If you don't look at this document and ask questions answered in this document,
you may be publicly ridiculed. You've been warned. :-)
</P>
<H3><A NAME="SlashAdministration2">Where are my .shtml files?</A></H3>
<P>
index.shtml etc. are created by slashd
(if it is running) when there is a need to create them (see next FAQ below).
These files normally have #include directives to get the header and footer.
</P>
<H3><A NAME="SlashAdministration3">How can I force updates / make pages update more frequently?</A></H3>
<P>
If your site is not very busy, some things can take awhile to update. In this
case, you can often force updates by restarting your httpd processes. A short-term
solution (for example, while testing) would be to set cache_enabled in the vars
table to 0 (which makes everything in Slash fetched live from the database
for dynamic pages); this would not be recommended for general use, though, as
performance of the site will suffer without caching.
</P><P>
There is also a variable in the vars table, updatemin, that controls
how often slashd checks to see what needs to be updated. A story needs to be
updated if its writestatus field is 1, so you can force an update for the next
time slashd cycles by setting your story's writestatus value; if you make a new
story or update an existing story, this is done for you.
</P><P>
Note that blocks, including the poll blocks, can take an especially long
time to update, even for active sites. They will update only when portald
runs to update the block in the database, and then after that, the httpds
need to refresh to get the new content. This time period is controlled by the
block_expire var (for blocks and templates) and story_expire var (for
stories).
</P>
<H3><A NAME="SlashAdministration4">How does the "Older Stuff" Slashbox work?</A></H3>
<P>
The Older Stuff slashboxes are created dynamiclly in the code. The only thing
you need to provide is a block named "${foo}_more", where ${foo} is the name
of the section. So the default "Older Stuff" block is named "index_more". For
the Ask Slashcode section, we would create an "askslashcode_more" block. Once
that block is in the database, an "Older Stuff" slashbox will be created for
that section.
</P><P>
The Older Stuff box will, in essence, include 2/3 of "maxstories", which is a
user-defined variable (and is 30 by default). So 10 stories would show on the
main page, and 20 in the Older Stuff box. This is not always the case; for
example, today's stories, even if there are more than 10, will show up on the
main page. But this is basically how it works.
</P>
<H2><A NAME="Troubleshooting">Troubleshooting</A></H2>
<H3><A NAME="Troubleshooting0">How Do I Troubleshoot $x?</A></H3>
<P>
This section is very important if you are having problems with Slash.
Please read it thoroughly.</P>
<P>First, make sure you have read the relevant documentation. If it does
not solve your problem, read it again. And if the problem persists,
reading it a third time is not a bad idea.</P>
<P>Also, if you did not follow the INSTALL instructions precisely, consider
whether or not your problems are a result of this. We are sometimes not
kind to people who don't read the instructions, or don't follow
them without good reason. It may sound mean and clichéd, but we
want to help you, and you can help us help you by reading the docs.</P>
<P>When you have exhausted the documentation, do your best to isolate the
problem. If you can, find out what is causing the problem. Try to
repeat the error, and document what you do to cause it. Try doing things
a little bit differently to see if the problem persists under different but
similar conditions. If you are inclined, try to track down in the code where
it is happening. If there is a log that is kept (by portald or httpd, for
instance) look in there for error messages. If an error message is given,
do your best to find out what is producing the message. Is it Apache, mysql,
slashd, portald, users.pl?</P>
<P>In other words, get all of the information you can about the error. This
is done for two reasons: first, you may solve the problem yourself, or
discover exactly what the error is. Second, if you can't solve it, then
you can give us as much information as possible to try to solve it.</P>
<P>So when all of these avenues have been exhausted, and the problem persists,
send in the information you have gathered (including relevant information
about your system setup, and the complete error messages, if applicable)
to the appropriate forum. This may be in the form of a bug report to Server
51, or a post to the mailing list, or a story submission to Ask Slashdot.
If you solve the problem with code changes, use <TT>diff -c oldfile newfile
> patchfile</TT> to create a patch and send it in to us. See the
FAQ under <A HREF="#Slashcodecom">Slashcode.com</A> above for more
information on how to contact us. And thank you!
</P>
<P><EM>Last updated Wed Oct 31 16:56:33 2001 GMT</EM></P>
<!--#include virtual="/slashfoot.inc"-->
|